Laravel 的 required_if 并列条件应该怎么写,求教

在页面表单中有一个选择country和一个type字段以及一个description字段,表单根据country和type的选择来做验证,当country为2时,type选择1或2,或3时,description为必填字段,这个时候description的验证规则如何写?
description=>’required_if:country_id,2|required_if:type1,2,3’ 这样在我将country选为3时同样让我验证了,求教改怎么改这个规则

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
最佳答案

在请求类里面,大概可以这么写:

    public function rules()
    {
        $rules = [
            // 一些普通的验证规则
        ];

      // 额外的规则(按你的描述,是A **且** B条件成立)
        if ($this->country_id == 2 && in_array($this->type, [1,2,3])) {
            $rules['description'] = 'required';
        }
        return $rules;
    }
4年前 评论
讨论数量: 2

为什么不自定义验证规则

4年前 评论

在请求类里面,大概可以这么写:

    public function rules()
    {
        $rules = [
            // 一些普通的验证规则
        ];

      // 额外的规则(按你的描述,是A **且** B条件成立)
        if ($this->country_id == 2 && in_array($this->type, [1,2,3])) {
            $rules['description'] = 'required';
        }
        return $rules;
    }
4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!