如何在laravel FormRequest的其他字段中检查null?

如何在laravel FormRequest的其他字段中检查null?,laravel,laravel-validation,laravel-formrequest,Laravel,Laravel Validation,Laravel Formrequest,当另一个字段有值(非空)时,我试图将其排除在验证之外。在这种情况下,如果product_pictures是数组(非空),我希望排除“deleted_pictures”。我的问题是我认为exclude\u除非:product\u图片,null将null作为字符串,而不是null 这是我的规矩 ProductRequest.php 我试着用这个来证实我的怀疑,它的工作原理应该是这样的 //test_field = 'some_value' return [ 'test_field' =>

当另一个字段有值(非空)时,我试图将其排除在验证之外。在这种情况下,如果product_pictures是数组(非空),我希望排除“deleted_pictures”。我的问题是我认为
exclude\u除非:product\u图片,null
null
作为
字符串
,而不是
null

这是我的规矩

ProductRequest.php

我试着用这个来证实我的怀疑,它的工作原理应该是这样的

//test_field = 'some_value'
return [
    'test_field' => 'required|string'
    'product_pictures.*' => 'required_with:product_pictures|file|max:2048|mimes:jpeg,jpg,png',
    'product_pictures' => 'sometimes|array',
    'deleted_pictures' => ['exclude_unless:test_field,some_value', 'required', new cant_delete_all($max,'1')],
];
read : exclude deleted_pictures unless test_field has a value of 'some_value'
在我的第一个例子中,删除的图片被排除在外,因为它没有检测到产品图片为“null”(字符串)

在第二种情况下,删除的图片不会被排除,因为test_字段与给定值匹配


我的问题是,如何计算FormRequest Laravel中的
null
值?

因此,显然可以将第二个参数留空,将其计算为null

return [
    'product_pictures.*' => 'required_with:product_pictures|file|max:2048|mimes:jpeg,jpg,png',
    'product_pictures' => 'sometimes|array',
    'deleted_pictures' => ['exclude_unless:product_pictures,', 'required', new cant_delete_all($max,'1')],
];
我不确定这是怎么做的,还是预期的行为。但我会留下这个答案以防万一有人需要它。如果有人能建议正确的方法,我会接受

return [
    'product_pictures.*' => 'required_with:product_pictures|file|max:2048|mimes:jpeg,jpg,png',
    'product_pictures' => 'sometimes|array',
    'deleted_pictures' => ['exclude_unless:product_pictures,', 'required', new cant_delete_all($max,'1')],
];