Laravel 如何将错误映射到字段?
以下是我的服务器端验证(以lumen为单位):Laravel 如何将错误映射到字段?,laravel,laravel-5,lumen,Laravel,Laravel 5,Lumen,以下是我的服务器端验证(以lumen为单位): $rules = array( 'prog_code' => 'required', 'payer_id' => 'required', ); $validator = \Validator::make($post, $rules); if (!$validator->fails()) { try {
$rules = array(
'prog_code' => 'required',
'payer_id' => 'required',
);
$validator = \Validator::make($post, $rules);
if (!$validator->fails()) {
try {
// Start Logic Here
} catch (\Exception $e) {
}
} else {
$errors = $validator->errors();
return response()->json($errors->all());
}
它返回的错误如下所示:
[
"The prog code field is required.",
"The payer id field is required.",
]
但问题是如何映射哪个字段的错误,因为我想在特定文本字段下面显示错误
我们可以自定义如下错误:
[
[prog_code] => "The prog code field is required.",
[payer_id] => "The payer id field is required.",
]
如果转储
$errors
变量,则会出现一系列错误,如您的目标:
ViewErrorBag {#406
#bags: array:1 [
"default" => MessageBag {#407
#messages: array:1 [
"pin" => array:1 [
0 => "The Programming Code is required Sir!"
]
]
#format: ":message"
}
]
}
$errors
变量在出现错误时由验证器注入实现相同响应的方法是:
if ( $validator->fails() ) {
$errors = [];
foreach ( $validator->errors()->toArray() as $field => $message ) {
$errors[$field] = $message[0];
}
return response()->json($errors);
}
不是工人。。它给出了与我没有给出的相同的错误摘要。只是粘贴了一个生产项目的工作示例,它怎么不工作?清除你的缓存或其他东西工作正常。。它也在验证。但我的问题不同。。请把我上面的问题读一遍。也许你可以这样做:“prog_code.required”=>json_encode(['prog_code'=>“编程代码是required Sir!”),