Laravel 5.1中Validator facade与Validate()方法的区别

Laravel 5.1中Validator facade与Validate()方法的区别,laravel,laravel-5.1,Laravel,Laravel 5.1,对于Laravel 5.1,我们知道可以通过以下方式进行验证: 使用validate()方法进行验证 使用验证器外观进行验证 如果我使用validate()方法,是否会使用需要输入的错误重定向回去???是,使用$this->validate($request,$rules)在规则无法附加错误时重定向请求。另一方面,使用Validator::可以实现手动重定向 我建议您使用表单请求类,以保持代码的清晰性和可重用性 class SignInRequest extends Request {

对于Laravel 5.1,我们知道可以通过以下方式进行验证:

使用validate()方法进行验证 使用验证器外观进行验证
如果我使用validate()方法,是否会使用需要输入的错误重定向回去???

是,使用
$this->validate($request,$rules)
在规则无法附加错误时重定向请求。另一方面,使用
Validator::
可以实现手动重定向

我建议您使用
表单请求类
,以保持代码的清晰性和可重用性

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
}
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
}