【问题标题】:Validate if another field is empty laravel validation验证另一个字段是否为空 laravel 验证
【发布时间】:2020-10-23 16:55:33
【问题描述】:

如果存在,我想验证字段,如果另一个字段不存在,我会失败 怎么做 ?我已经创建了自定义验证来获取基于记录的存储 id

我有字段product_idamountamount 字段根据product_id 在最大值和最小值之间验证,如果我提供amount = 100000 并且不填写product_id 字段验证amount 字段已通过并显示错误,因为我没有填写product_id 我想在执行自定义验证之前检查product_id 是否为空..

我已阅读 laravel 文档上的所有验证方法,但仍未找到解决方案。 怎么办?

【问题讨论】:

    标签: laravel validation required


    【解决方案1】:

    终于找到了解决办法……

    在表单请求类上,我只是在验证实例上添加sometimes 规则,因此当product_id 字段不存在于amount 字段时将不会验证,当存在时它将使用如下验证规则进行验证:

    class StoreRequest extend FormRequest
    {
        protected function getValidatorInstance()
        {
            $validator = parent::getValidatorInstance();
    
            $validator->sometimes('amount', 'required|numeric|max_amount:product_id', function ($input) {
               return Arr::has($input, 'product_id');
            });
    
            return $validator;
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2016-01-11
      • 2017-06-07
      • 2021-03-11
      • 1970-01-01
      • 2019-01-07
      • 2014-08-08
      • 2021-09-14
      • 2015-03-01
      • 1970-01-01
      相关资源
      最近更新 更多