Laravel 验证 required_without_all

Laravel validation required_without_all

说我笨,但我听不懂 :) 我想设置验证器规则,因此仅当存在两个字段之一(广告组或 all_adgroups)时它才会通过。

这是我的控制器:

 $this->validate($request,
        [
            'new_target_cpa_value' => 'required|numeric',
            'adgroups' => 'exists:google.ad_groups,id|required_without_all:all_agroups',
            'all_agroups' => 'required_without_all:adgroups'
        ]
    );
    dd($request->all());

这里是 dd:

"_token" => "aHjluUXPuZpEbglmVt4UePhriGvRWDOjk3OgfF88" "new_target_cpa_value" => "123" "adgroups" => array:1 [▶] "all_agroups" => "1"

试试这个:

 $this->validate($request,
        [
            'new_target_cpa_value' => 'required|numeric',
            'adgroups' => 'exists:google.ad_groups,id',
            'all_agroups' => 'required_unless:adgroups,null'
        ]
    );