版本5.0.10,多对多关联在数据表字段设定唯一时的问题

浏览:475 发布日期:2017/10/19 分类:求助交流 关键字: 5.0.10 多对多关联 thinkphp bug
$user = User::get(1);
// 传入中间表的额外属性
$user->roles()->attach(1,['remark'=>'test']);
//此时添加成功,

//注:数据表user_id, roles_id,两字段唯一: userrole unique(user_id, roles_id)。

//如何再次增加相同数据时,
// 增加关联的中间表数据
$user->roles()->attach(1);
//添加成功,第一次添加的数据被删除了,重新添加第二次的数据(row id变化),第一次传入中间表的额外属性也删除了。
正常情况下,如果user_id, roles_id相同row存在的话,应该添加失败才对吧,这样把原数据删除了,造成关联行中的额外属性也丢失。是不是有问题?
最佳答案
评论( 相关
后面还有条评论,点击查看>>