laravel unique的用法是“\’email\’ => [\’required\’, \’email\’,Rule::unique(\’customer\’)->…})],”,表示更新信息检测邮箱是否重复时,排除自己并且排除状态为4的所有用户。
本教程操作环境:windows7系统、Laravel5.5版,DELL G3电脑。
Laravel unique规则使用
laravel的unique的用法:
$customer_type = request(\’customer_type\’, 1); $attributes = request()->validate([ \’gender\’ => \’required|min:0|max:3\’, \’chinese_name\’ => \’nullable|min:2\’, \’english_name\’ => \’nullable|min:3\’, \’area_phone_number\’ => \’required|numeric\’, \’telephone\’ => \’required|numeric\’, \’email\’ => [\’required\’, \’email\’, Rule::unique(\’customer\’)->ignore(request(\’id\’))->where(function ($query) { $query->whereNotIn(\’status\’, [4]); })], // \’email\’ => \’required|email|unique:customer,email,\’ . request(\’id\’), \’password\’ => \’nullable|string|min:6\’, \’concurrent_login_num\’ => \’required|min:1|integer\’, \’child_age\’ => \’nullable|integer|min:0\’, \’remark\’ => \’nullable|string|max:1024\’, \’status\’ => \’required|integer|min:0|max:4\’, ]);
注意一下这个用法:
\’email\’ => [\’required\’, \’email\’, Rule::unique(\’customer\’)->ignore(request(\’id\’))->where(function ($query) { $query->whereNotIn(\’status\’, [4]); })],
这个意思是更新信息检测邮箱是否重复的时候,排除自己,并且排除状态为4的所有用户,我这里,状态为4的用户是删除的状态。如果这个邮箱是被删除的用户所使用,那么,也不检验重复性。
参考资料:https://laravel.com/docs/5.5/validation文件位置:D:\\\\phpStudy\\\\WWW\\\\BCCKidAdmin\\\\vendor\\\\laravel\\\\framework\\\\src\\\\Illuminate\\\\Validation\\\\Rules\\\\DatabaseRule.php关于各种的的验证:D:\\\\phpStudy\\\\WWW\\\\BCCKidAdmin\\\\vendor\\\\laravel\\\\framework\\\\src\\\\Illuminate\\\\Validation\\\\Concerns\\\\ValidatesAttributes.phpD:\\\\phpStudy\\\\WWW\\\\BCCKidAdmin\\\\vendor\\\\laravel\\\\framework\\\\src\\\\Illuminate\\\\Validation\\\\Concerns\\\\ReplacesAttributes.php
相关推荐:最新的五个Laravel视频教程
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码官网:www.west.cn