首页 > 解决方案 > 如何在 laravel 7 中设置 required_if

问题描述

我有两个文本框color_name[]color_code[]

颜色

怎么放required_if?如果颜色代码不为空,则需要颜色名称。

'color_name' => 'required_if:color_code',

错误

验证规则 required_if 至少需要 2 个参数。

标签: laravel

解决方案


$validator = Validator::make($request->all(), [
    'color_name' => 'required_with:color_code',
]);

if ($validator->fails()) {
   return  $validator->errors()->first();
}

使用它来解决问题。

对于阵列,请将您的阵列重新塑造成这个

array:2 [
  0 => array:2 [
    "color_name" => "red"
    "color_code" => "#77"
  ]
  1 => array:2 [
    "color_name" => "blue"
    "color_code" => "#88"
  ]
]


$validator = Validator::make($request->all(), [
    'color'=>'array',
    'color.*.color_name' => 'required_with:color.*.color_code',
]);

推荐阅读