我有一些验证需要 url 或 路由,但不需要两者。
$this->validate($request, [
'name' => 'required|max:255',
'url' => 'required_without_all:route|url',
'route' => 'required_without_all:url|route',
'parent_items'=> 'sometimes|required|integer'
]);
我尝试过使用 required_without
和 required_without_all
但是它们都通过了验证,我不确定为什么。
route
是route
字段中的规则
最佳答案
我想你在找required_if
:
The field under validation must be present if the anotherfield field is equal to any value.
因此,验证规则为:
$this->validate($request, [
'name' => 'required|max:255',
'url' => 'required_if:route,""',
'route' => 'required_if:url,""',
'parent_items'=> 'sometimes|required|integer'
]);
关于php - Laravel 验证或,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34915547/