假设我有一个由property_a
和组成的对象property_b
,提交时必须至少接收这两个属性之一。
如果对象只是一个,我可以使用required_without
验证规则,如下所示
return [
'property_a' => ['required_without:property_b'],
'property_b' => ['required_without:property_a'],
];
如果我的对象本身在另一个对象之内,则使用虚线符号会很容易:
return [
'parent_object.property_a' => ['required_without:parent_object.property_b'],
'parent_object.property_b' => ['required_without:parent_object.property_a'],
];
但是如何将验证规则与对象数组一起使用?
return [
'array.*.property_a' => ['required_without:???.property_b'],
'array.*.property_b' => ['required_without:???.property_a'],
];
对于文档required_without做我的使用情况不明确什么都不说。
有解决方法吗?
在验证数组中,键和值均适用,因此您*
甚至可以在规则中使用。
所以试试这个:
return [
'array.*.property_a' => ['required_without:array.*.property_b'],
'array.*.property_b' => ['required_without:array.*.property_a'],
];
参考:https : //laravel.com/docs/6.x/validation#validating-arrays
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句