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

时间:2015-07-06 14:30:52

标签: php laravel laravel-5 laravel-5.1

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

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

Laravel 5.1 docs

return redirect('register')
            ->withErrors($validator, 'login');

但是我正在使用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');
    }

1 个答案:

答案 0 :(得分:7)

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

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

您可以对该请求中的错误进行调整,然后在您的视图中访问它们,如下所示:

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