我有一个包含动态字段的表单(多个用户使用一个表单动态添加)
我正在尝试在手动验证后向特定字段添加错误消息(使用基本if)
我尝试过以下操作,但没有一项工作
$validator->errors()->add('password.0', 'Les mots de passe ne correspondent pas');
$validator->errors()->add('password.*', 'Les mots de passe ne correspondent pas');
$validator->errors()->add('password[0]', 'Les mots de passe ne correspondent pas');
我无法让邮件包接受我的邮件,最后,“$ validator-> errors()”不包含我的字段密码[0]
的邮件有人知道如何让它发挥作用吗?
答案 0 :(得分:2)
基于你拥有的输入它们是数组我认为使用laravel规则验证数组是好的。 这是array validations的文档。
类似的东西:
$validator = Validator::make($request->all(), [
'password.*' => 'required', // your rules
] , [
'password.*.required' => "your message"
]);
答案 1 :(得分:0)
@Masoud的答案很好,我可以使用特定的代码
'password.*' => ['required',
function($attribute, $value, $fail) {
$arr_explode_attr = explode(".",$attribute);
if ($value != request()->input('password_confirmation.'.$arr_explode_attr[1])) {
return $fail('Les mots de passe ne correspondent pas');
}
}];
感谢您的帮助=)