原因:
在做中控系统中遇到了一个给用户批量分配角色的问题,刚开始想到的是循环插入,但立马给否定了,循环操作数据库开发者的大忌啊,于是查找手册找到数据写入看到批量操作:addAll(),测试成功,以为万事大吉了,但当第二次操作时提示失败,找原因,原来是数据库中已经存在的数据addAll()没有覆盖导致了错误
解决方法:
查找Thinkphp源码翻到Library/Think/Model.class.php找到了addAll方法:public function addAll($dataList,$options=array(),$replace=false)于是秒懂了,replace肯定是问你是否覆盖已经存在的数据,于是修改我的addAll方法为:$user->addAll($data,array(),true):再次测试问题解决。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。