Rau*_*pta 5 php laravel laravel-validation laravel-4.2
required_without
当我传递多个字段时,Laravel 无法正常工作。
这是我的规则:
$rules = [
'startDate' => 'date|date_format:m/d/Y|required_without:customerId,purchaseId,orderId',
'endDate' => 'date|date_format:m/d/Y|required_without:customerId,purchaseId,orderId',
];
Run Code Online (Sandbox Code Playgroud)
我想要的是,当我通过customerId
或purchaseId
或orderId
(但不是全部)时,我应该不会出错。但这给了我startDate
所需的任何错误。
任何帮助将不胜感激。
小智 5
我相信,您正在寻找的规则是 required_without_all IE。当所有其他指定字段(customerId、purchaseId、orderId)不存在时,startDate 字段必须存在。
根据 https://laravel.com/docs/5.6/validation
required_without_all:foo,bar,... 仅当所有其他指定字段都不存在时,验证字段必须存在且不为空。
相比之下
required_with:foo,bar,... 仅当任何其他指定字段存在时,验证字段必须存在且不为空。