laravel 怎么获取要修改的信息

2025-04-27 01:56:56
推荐回答(1个)
回答1:

Laravel 自带一个简单、方便的 Validation 类用于验证输入的数据,并能获取不能通过验证的错误消息。
验证输入
修改 ArticlesController 控制器 update 动作的代码:
$rules = array('title' => 'required','text'=>'required');
$validator = Validator::make(Input::all(), $rules);
if ($validator->fails())...
注意:Validator::make 需要两个参数,输入的数据和验证规则。验证规则是个数组。本例使用的验证规则是必须输入,其他验证规则可以查看帮助文档。

传递错误信息
验证发生错误时候,Lavavel能够用简单的方法向视图反馈错误消息,继续上述代码:
...
if ($validator->fails())
{
return Redirect::route('articles.edit',$id)
->withErrors($validator)
->withInput();
}
...
注意:当错误发生时候,
1、Redirect::route('articles.edit',$id)是转向到修改页面。
2、->withErrors($validator) 是传递验证错误信息。
3、->withInput();则是传递输入的信息。
显示错误信息
Redirect::route('articles.edit',$id)是转向到修改页面,所以现在要在修改视图中显示验证错误信息。修改app/views/articles/edit.blade.php文件:

Ariticle edit



@if ($errors->any())

{{ count($errors->all()) }} 错误发生:



    @foreach ($errors->all() as $message)
  • {{ $message }}

  • @endforeach



@endif
错误信息在$errors,通过遍历,将所有的信息显示出来。
最终页面
如果修改时,title或text文本框为空的时候,提交,会出现错误信息。
练习
再按着本节的方法,给create添加类似的验证处理。