Laravel自定义错误验证消息

nbysray5  于 12个月前  发布在  其他
关注(0)|答案(2)|浏览(95)

问候,这是我的代码,我需要为每个规则自定义错误消息

$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);
}
z3yyvxxp

z3yyvxxp1#

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

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'
      ];
}
xdnvmnnf

xdnvmnnf2#

您可以通过两种方式创建自己的自定义验证消息:
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);

相关问题