表单验证中,手动创建建验证器,当验证不通过时会返回所有错误信息的一个数组,有什么好的方法处理?

表单验证中,使用手动创建建验证器,当验证不通过时会返回所有错误信息的一个数组,目前我是用App\Exceptions\Handler类中的register方法来注册处理

public function register() {
        //表单验证处理
        $this->renderable(function (ValidationException $exception){
            return Error(Arr::first($exception->errors()));
        });
    }

请问还有什么好的方法吗?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

在Request的验证类里面重写这个方法failedValidation

protected function failedValidation(Validator $validator)
{
    echo $validator->errors()->first();//输出第一个验证失败的项
}
3年前 评论
讨论数量: 5

在Request的验证类里面重写这个方法failedValidation

protected function failedValidation(Validator $validator)
{
    echo $validator->errors()->first();//输出第一个验证失败的项
}
3年前 评论

我目前跟你一样

public function register()
{
        $this->renderable(function (ValidationException $e) {
            return self::error([], Arr::first($e->errors())[0]);
        });
}
3年前 评论
da_house

在验证器里重写 failedValidation 方法

protected function failedValidation(Validator $validator)
{
      throw new FormValidationException($validator->errors()->first(), 0);
}
3年前 评论

surest.cn/archives/146 见:自定义设置Request验证器

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!