這很奇怪。由於版本不同或請求控制器處理不同,我一直在使用Google一直在努力爲我的問題尋找解決方案,並且大多數解決方案對我無效。Laravel 5.2未顯示錶單驗證錯誤
這是怎麼回事。
我有一個表格:
<div class="form-group">
Name *
{!! Form::text('name', '', ['class'=>'form-control', 'placeholder'=>'Required field']) !!}
</div>
和請求:
class ContactFormRequest extends Request
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'name' => 'required|max:64',
'email' => 'required|email|max:128',
'message' => 'required|max:1024',
];
}
}
我要離開name字段爲空,以便驗證失敗,應該返回到聯繫人表單頁面和顯示錯誤:
@if(count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
它什麼也沒有顯示!如果我vardump
的$errors
變量,我得到這個:
object(Illuminate\Support\ViewErrorBag)[161]
protected 'bags' =>
array (size=0)
empty
如果我填寫表單域正確它成功地將我的成功頁面,一切都運行完美。我現在需要的是使這個錯誤的東西正常工作:S
謝謝你提前!
是你的控制器界,__web中間件group__的路線一部分?如果沒有,請嘗試綁定它們,但我在代碼中看不到任何錯誤... – Hammerbot
我假設您的控制器的方法在參數列表中包含ContactFormRequest?你自己重定向到表單還是依賴驗證器的默認操作? –
是的。我所有的路線都與中間件的「網絡」分組在一起。我的控制器方法在它的參數中有ContactFormRequest類型! –