ThinkPHP软删除与unique唯一性验证冲突问题

ThinkPHP软删除与unique唯一性验证冲突问题
使用背景环境描述解决方式截图说明

使用背景环境描述
ThinkPHP在使用软删除功能删除用户数据后,再次插入数据时,遇到唯一性验证问题 ‘username|用户名’ => ‘require|alphaDash|min:4|max: 20|unique:user’ 提示已经存在。此时查看数据库确实数据已存在,且delete_time字段标记为删除是的时间戳。
解决方式
修改ThinkPHP验证文件thinkphp/library/think/Validate.php文件中的unique函数。在查询语句前追加where的查询条件。$map[] = [‘delete_time’, ‘=’, null]; 原理就是添加一个限制约束,唯一性判断时增加一个delete_time = null的条件,只查询所有未删除的数据进行唯一性判断。
截图说

ThinkPHP软删除与unique唯一性验证冲突问题最先出现在Python成神之路

版权声明:
作者:Mr李
链接:https://www.techfm.club/p/16590.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>