我注意到,当我尝试使用laravel验证程序时,未返回错误消息,我已阅读文档并验证所有路由都具有中间件“ web”,因此变量“ $ errors”应该可用,但是我已经进行了各种测试,重定向后无法获取,这是我的代码
RegisterController
$this->validate($request,[
'nombre' => 'required|string|max:255',
'apellido' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:ms_usuarios',
'password' => 'required|string|min:6|confirmed',
'g-recaptcha-response'=>['required',new Captcha],
'terms_n_conditions'=>'required'
]);
/*
this code does not work either
$validator= Validator::make($request->all(), [
'nombre' => 'required|string|max:255',
'apellido' => 'required|string|max:255',
'email' => 'required|string|email|max:255|unique:ms_usuarios',
'password' => 'required|string|min:6|confirmed',
'g-recaptcha-response'=>['required',new Captcha],
'terms_n_conditions'=>'required'
]);*/
/*
if ($validator->fails()) {
return redirect('/register')
->withErrors($validator)
->withInput();
}*/
register.blade
@if (Session::get('errors'))
<div class="alert alert-dismissable alert-warning">
<h4>Uwaga!</h4>
<ul>
@foreach (Session::get('errors')->all() as $error)
<li>{!! $error !!}</li>
@endforeach
</ul>
</div>
@endif
<!-- Here begins the registration form -->
<br>
<div class="container">
<div class="row">
<div class="col s12 m12 l">
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
答案 0 :(得分:0)
显示代码后,我看不到设置了$errors
,应该将其设置为$validator->messages()