在Laravel中使用ValidatesRequests特性

时间:2015-08-24 08:14:57

标签: php laravel-5

以下是我AuthController的代码:

public function postRegister(Request $request)
{
    $this->validate($request, [
        'name' => 'required|min:3',
        'email' => 'required|email|unique:users',
        'password' => 'required|min:5|max:15',
    ]);
}

如果验证失败,我将被重定向到上一页。有没有办法传递附加数据以及输入和错误(由特征处理)?

编辑:实际上,除了我要传递的其他数据外,该特性完全符合我的要求。正如@CDF在答案中建议的那样,我应该修改buildFailedValidationResponse方法protected

我应该创建一个新的自定义特征,它具有与ValidatesRequests特征(Laravel附带)相同的功能,并编辑buildFailedValidationResponse方法以接受另一个参数或< / strong>特征可以根据另一种方法(如果存在)轻松修改?

1 个答案:

答案 0 :(得分:0)

当然可以,请查看文档中的示例: http://laravel.com/docs/5.1/validation#other-validation-approaches 1

使用失败();方法,您可以在会话中刷新错误并输入值,并在重定向后将其恢复。传递其他数据只需用with();方法

if ($validator->fails()) {
return back()->withErrors($validator)
->withInput()
->with($foo);
    }