Laravel 验证需要这个或那个

Laravel Validation required this or that

我需要验证请求 account_type 如果它是 'Personal' 或 'Organizational' 这样我就可以根据需要验证其他字段,如果 account_type,personal.Heres 我尝试过的代码。

        'account_type' => 'required|options:PERSONAL,ORGANIZATIONAL',
        'per_client_name' => 'required_if:account_type,PERSONAL|string',
        'per_street' => 'required_if:account_type,PERSONAL',
        'per_address' => 'required_if:account_type,PERSONAL',
        'org_name' => 'required_if:account_type,ORGANIZATIONAL',
        'org_type' => 'required_if:account_type,ORGANIZATIONAL',
        'org_cont_name' => 'required_if:account_type,ORGANIZATIONAL'

方法Illuminate\Validation\Validator::validateOptions 不存在。 这是我得到的错误。

如果您只有这 2 个选项 (个人,组织),则使用 in 而不是 options。像这样:

'account_type' => 'required|in:PERSONAL,ORGANIZATIONAL',

对我有用。