laravel 表单验证 多个字段组合后唯一

Posted 末路伯爵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel 表单验证 多个字段组合后唯一相关的知识,希望对你有一定的参考价值。

在laravel 表单验证中,常会遇到需要几个字段组合起来做唯一限制。
解决方案如下:

$where[] = [\'parentId\',\'=\',$this->request->get(\'parentId\')];

return [

        \'menuTitle\' => [\'required\', \'max:32\',\'min:2\',Rule::unique(\'admin_menu\',\'menuTitle\')->where(function($query)use($where){
            $query->where($where)->whereNull(\'deleted_at\');
            })->ignore($id) ],
        \'menuTitleEn\' => [\'required\', \'max:32\',\'min:2\',Rule::unique(\'admin_menu\',\'menuTitleEn\')->where(function($query)use($where){
            $query->where($where)->whereNull(\'deleted_at\');
            })->ignore($id) ],
        \'menuRoute\' => [\'required\',Rule::unique(\'admin_menu\',\'menuRoute\')->ignore($id)],
        \'menuIcon\' => [\'required\', \'min:2\',\'max:32\'],
        \'routeName\' => [\'sometimes\', \'min:2\',\'max:32\'],
        \'parentId\' => [\'required\',\'numeric\'],
        \'order\'=>[\'sometimes\',\'numeric\']
        
    ];

以上是关于laravel 表单验证 多个字段组合后唯一的主要内容,如果未能解决你的问题,请参考以下文章

具有唯一字段的 Laravel 验证服务

Laravel 尝试提供唯一字段验证时出现 sql 错误

Laravel 4 验证唯一(数据库)忽略当前

Laravel - 多个字段的相同自定义错误消息

Laravel 5.3 验证唯一

验证laravel 4错误中的数组表单字段