简体   繁体   English

Laravel多维数组验证中显示错误消息

[英]Wrong message showing in Laravel validation for multidimensional array

I have this validation rules and i appended some custom messages for those validations. 我有此验证规则,并为这些验证附加了一些自定义消息。

 $this->validate($request, [
            'name'=>'required',
            'departments.*.name'=>'required',
            'departments.*.sections.*.name'=>'required',
        ],[
            'name.required'=>'The division name field is required.',
            'departments.*.name.required'=>'The department name field is required.',
            'departments.*.sections.*.name.required'=>'The section name field is required.',
        ]);

Screenshot of my view: 我的屏幕截图:

在此处输入图片说明

Here you can see, the empty section input field showing error message 在这里您可以看到空白部分输入字段显示错误消息

"The department name field is required." “部门名称字段为必填。”

But it should be show 但这应该表明

"The section name field is required." “节名称字段为必填。”

What am i missing? 我想念什么?

Note: i am printing the first index of all fields error messages 注意: 我正在打印所有字段的第一个索引错误消息

Its replacing the error messages from departments.*.sections.*.name.required 它替换了来自departments.*.sections.*.name.required的错误消息

You should add child dimension errors before parent fields 您应该在父字段之前添加子维度错误

try to use this: 尝试使用此:

 $this->validate($request, [
            'name'=>'required',
            'departments.*.name'=>'required',
            'departments.*.sections.*.name'=>'required',
        ],[
            'name.required'=>'The division name field is required.',
            'departments.*.sections.*.name.required'=>'The section name field is required.',
            'departments.*.name.required'=>'The department name field is required.',
        ]);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM