【问题标题】:Laravel 5.6 custom rule validationLaravel 5.6 自定义规则验证
【发布时间】:2019-02-12 10:54:49
【问题描述】:

我在添加/编辑“localities”中创建了一个验证规则的函数

我已检查名称字段在“localities”表中是否唯一。

我在 localities 表中多了一个字段“is_deleted”。如果“is_deleted”字段值为 1,那么它没有询问验证(即)不需要询问“名称已在使用中”。

 public function rules()
    {
        return [
            'name' => ['required', 'unique:localities'],
            'city_id' => ['required']
        ];
    }

如何为此条件创建自定义规则

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    你可以通过添加列名和id来排除/忽略,比如

    public function rules()
    {
        return [
            'name' => ['required', 'unique:localities,name,1,is_deleted'],
            'city_id' => ['required']
        ];
    }
    

    【讨论】:

    • 嗨@C2486,代码正在运行。谢谢。但是在编辑区域中,我如何更改此公共函数 rules() { return [ 'name' => ['required', Rule::unique('localities')->ignore(request()->segment(3) )], 'city_id' => ['必需'] ]; }
    • @KamesP : 这似乎与当前问题不同,请将其添加为新问题。
    • 在编辑的情况下,您还需要忽略地区的 ID 'unique:localities,name,'.$id.',id,1,is_deleted',其中 $id 将是地区的当前 ID
    猜你喜欢
    • 2017-04-11
    • 2018-02-18
    • 2016-11-22
    • 2018-05-25
    • 2016-11-14
    • 1970-01-01
    • 2014-04-22
    • 2015-01-26
    • 2016-01-13
    相关资源
    最近更新 更多