Joh*_*ean 2 php validation laravel laravel-4
我正在使用Laravel的表单验证功能,并试图找出如何在视图中循环表单错误.目前,我使用以下代码成功验证了表单:
public function create()
{
$validator = Validator::make(
Input::all(),
array(
'username' => 'required|alpha_num|unique:users',
'email' => 'email|unique:users',
'password' => 'required|min:6',
'passwordConf' => 'required|same:password'
)
);
if ($validator->fails())
{
return Redirect::to('join')->withErrors($validator);
}
return View::make('user/join')->with();
}
Run Code Online (Sandbox Code Playgroud)
验证器成功验证表单并join在验证失败时重定向到路由.显然,我还想向用户显示验证消息.我有一个master.blade.php布局文件,我的所有视图都扩展,在布局中我有以下代码:
@if (Session::has('errors'))
<div class="alert alert-danger">
@foreach (Session::get('errors') as $error)
Test<br />
@endforeach
</div>
@endif
Run Code Online (Sandbox Code Playgroud)
这似乎只有一半的工作.如果存在验证错误,则会在页面上显示警报div,但不会输出验证错误.这表明它Session::has('errors')返回true但是我显然没有正确地迭代验证错误.
如何通过发送到视图的验证错误进行迭代withErrors?
$errors传递给您的视图有一个自动变量.您不必直接检查会话.
@foreach ($errors->all() as $error)
{{ $error }}<br/>
@endforeach
Run Code Online (Sandbox Code Playgroud)
以下是文档的引用:
请注意,我们不必将错误消息显式绑定到GET路由中的视图.这是因为Laravel将始终检查会话数据中的错误,并自动将它们绑定到视图(如果可用).因此,重要的是要注意
$errors,在每个请求的所有视图中始终可以使用变量,这样您就可以方便地假设$errors变量始终定义并且可以安全使用.该$errors变量将是一个实例MessageBag.
| 归档时间: |
|
| 查看次数: |
6861 次 |
| 最近记录: |