Laravel 5.1单页上的多个表单名称消息包

Hei*_*erg 4 php laravel laravel-5 laravel-5.1

我在Laravel 5.1中需要有关如何命名MessageBag错误的帮助,允许我检索特定表单的错误消息.

这可以在没有使用请求的控制器的存储方法中实现.

Laravel 5.1文档

return redirect('register')
            ->withErrors($validator, 'login');
Run Code Online (Sandbox Code Playgroud)

但是我正在使用RegistrationRequest,因此我不需要验证控制器内的任何输入,我只需要在请求中设置我的规则.

我尝试将这行代码添加到我的请求中

/**
     * Format the errors from the given Validator instance.
     *
     * @param  \Illuminate\Contracts\Validation\Validator  $validator
     * @return array
     */
    protected function formatErrors(Validator $validator)
    {
        return $validator->errors()->getMessages('registration');
    }
Run Code Online (Sandbox Code Playgroud)

Jav*_*ior 7

我有同样的问题,当我查看FormRequest类时,我发现有一个属性protected $errorBag = 'default'.

所以,通过覆盖你的请求类中的这个属性,例如
protected $errorBag = 'login';

您可以根据该请求确定范围,然后在视图中访问它们,如下所示:

$errors->login->has('email')