Laravel 5.1单页多表单命名消息包

4
我需要在Laravel 5.1中获得帮助,了解如何命名MessageBag错误,以便我可以检索特定表单的错误消息。这可以在控制器的存储方法中实现,而无需使用请求。Laravel 5.1文档
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个回答

10

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

因此,通过在请求类中覆盖此属性,例如
protected $errorBag = 'login';

您可以将该请求的错误范围限定,并在视图中访问它们,如下所示:

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接