如何验证键名中带点的数组? (Laravel)

How validate an array with a dot in key name ? (Laravel)

如何在 laravel 验证中验证此数组:

"price" => array:1 [▼
           0 => array:1 [▼
                "price.value" => 50
]

我尝试使用它,但它不起作用:

'price.0.price.value' => ['required']

我该如何解决? 我要注意:我别无选择,无法更改名称“price.value”。

Example:

{
  filters: [{field: '', value: ''}]
}

     
'filters' => 'nullable|array',
'filters.*.field' => 'required|max:60',
'filters.*.value' => 'nullable|max:60',
'filters.*.cond' => 'nullable|max:10',

试一试:

'price.*.value' => 'required'

由于您无法更改名称 price.value,您必须 escape the dot 因为在 Laravel 数组验证中,一个点表示嵌套级别。 尝试使用 \
转义 . 您的数据:

 "price" => array:1 [▼
           0 => array:1 [▼
                "price.value" => 50
]

带点转义的验证规则:

'price.0.price\.value' => ['required']