【问题标题】:Laravel make custom error validation messagesLaravel 制作自定义错误验证消息
【发布时间】:2021-12-12 08:16:36
【问题描述】:

您好,这是我的代码,我需要为每个规则制作自定义错误消息

$validator = Validator::make($request->all(), [
        'name' => 'required|min:3|max:100',
        'phone' => 'required',
        'date' => 'required',
        'address' => 'required|min:3|max:100',
        'test' => 'required|min:3|max:100',
    ]);

if ($validator->fails()) {
    $errors = $validator->errors();
    return response()->json($errors);
}

【问题讨论】:

标签: laravel


【解决方案1】:

最好为验证目的创建一个单独的请求

public function rules(): array
{
        return [
        'name' => 'required|min:3|max:100',
        'phone' => 'required',
        'date' => 'required',
        'address' => 'required|min:3|max:100',
        'test' => 'required|min:3|max:100',
    ]
}

public function messages(): array
{
      return [
                'name' => 'Please enter name'
      ];
}

【讨论】:

    【解决方案2】:

    您可以通过两种方式创建自己的自定义验证消息:

    1- 在 resources/lang/en/validation.php 中,您可以更改每个规则的验证消息

    2- 您可以像这样为每个验证传递自定义消息:

    $validator = Validator::make($input, $rules, $messages = [
        'required' => 'The :attribute field is required.',
    ]);
    

    您可以查看here了解更多信息

    具体到您的问题:

    $messages = [
       'required' => 'The :attribute field is required.',
       'min' => ':attribute must be more than 3 chars, less than 100'
    ]
    $validator = Validator::make($request->all(), [
            'name' => 'required|min:3|max:100',
            'phone' => 'required',
            'date' => 'required',
            'address' => 'required|min:3|max:100',
            'test' => 'required|min:3|max:100',
        ], $messages);
    

    【讨论】:

    • 我为每个输入添加新的 $validator 变量?
    • 编辑以回答您的问题
    猜你喜欢
    • 1970-01-01
    • 2017-05-30
    • 2021-02-24
    • 1970-01-01
    • 2020-02-26
    • 2015-09-07
    • 1970-01-01
    • 2014-05-31
    • 2017-06-28
    相关资源
    最近更新 更多