对于Laravel 5.1,我们知道我们可以通过这种方式进行验证:
$this->validate( $request, $rules);
$validator = Validator::make($request->all(), $rules);
if($validator->fails()) {
return redirect()->back()
->withInput($request->except('password'))
->withErrors($validator);
}
如果我使用validate()方法??
,是否需要输入错误重定向答案 0 :(得分:2)
是的,如果规则未能附加错误,则使用$this->validate( $request, $rules)
可以重定向请求。另一方面,使用Validator::
可以实现手动重定向。
我建议您使用Form Request class
以保持代码清晰且可重复使用。
class SignInRequest extends Request {
public function authorize()
{
return true;
}
public function rules()
{
return [
'email' => array('required'),
];
}
}
因此,在您的控制器中,您可以:
function validateSignIn(SignInRequest $request){
// do stuff here if rules are ok
}