关联模型一对多更新中的bug

浏览:825 发布日期:2015/08/14 分类:技术分享 关键字: 关联模型一对多 BUG
关联模型一对多更新的时候没有像多对多那样先删除旧的数据,直接添加了。
所以在执行关联更新前要先删除一对多的表格相关数据。
这个是多对多的:
SHOW COLUMNS FROM `hd_goods_cat` [ RunTime:0.003000s ]
DELETE FROM `hd_goods_cat` WHERE `goods_id` = 2 [ RunTime:0.000000s ]
INSERT INTO hd_goods_cat (goods_id,cat_id) SELECT a.goods_id,b.cat_id FROM hd_goods AS a ,hd_category AS b where a.goods_id =2 AND b.cat_id IN (5,8,7) [ RunTime:0.000000s ]
SHOW COLUMNS FROM `hd_goods_gallery` [ RunTime:0.003000s ]
这个是一对多的:
SHOW COLUMNS FROM `hd_goods_desc` [ RunTime:0.004000s ]
INSERT INTO `hd_goods_desc` (`desc`,`goods_id`) VALUES ('/object/uploads/goodsdesc/201508/55cd754a00ee7.jpg',2) [ RunTime:0.000000s ]
INSERT INTO `hd_goods_desc` (`desc`,`goods_id`) VALUES ('/object/uploads/goodsdesc/201508/55cd74c82a935.jpg',2) [ RunTime:0.001000s ]
INSERT INTO `hd_goods_desc` (`desc`,`goods_id`) VALUES ('/object/uploads/goodsdesc/201508/55cd747e9c89f.jpg',2) [ RunTime:0.000000s ]
SHOW COLUMNS FROM `hd_goods_article` [ RunTime:0.004000s ]

另外:多对多关联模型中间表ID不支持10位数以上,只能1-9。
提醒:一对多更新的时候是二维数组。

附件 一对多.png ( 12.5 KB 下载:10 次 )

最佳答案
评论( 相关
后面还有条评论,点击查看>>