【发布时间】:2021-12-03 17:16:44
【问题描述】:
Laravel 的 exclude_unless,field,value 规则在 field 是一个值数组且 value 包含在 field 数组中的情况下似乎不起作用。
鉴于以下情况:
$validator = Validator::make($request->all(), [
'some_array' => 'array',
'some_field' => 'exclude_unless:some_array,foo|alpha_num',
]);
如果some_array 等于['foo'],验证器将无法排除some_field。这似乎是因为excludes_unless 下面的比较是in_array(['foo'], ['foo']),它返回false。
是否有可能实现与exclude_unless 相同的逻辑——如果另一个字段等于某个值,则将一个字段排除在验证之外,但是与之比较的字段是一个数组,我们正在检查该值是否在该数组中数组?
【问题讨论】:
-
你使用的是什么版本的 Laravel?
-
@Rwd 我正在使用 7,所以很遗憾无法访问 8 个细节!