2016-11-20 30 views
0

我試圖通過聯合使用的hasMany使用這裏的例子使用前:http://docs.sequelizejs.com/en/2.0/docs/associations/#belongs-to-many-associationssequelize協會的hasMany通過刪除表中插入

基本上,我的型號有:

User: 
User.hasMany(models.Projects, {through: models.Project_User}); 

Project: 
Project.hasMany(models.User, {through: models.Project_User}); 

Project_User has custom fields: 
status 
is_default 

問題是,當我嘗試添加到此使用

user.setProjects(project).then(function(res){ 

它刪除Project_User中的記錄,然後再刪除前面的值。

Executing (default): SELECT status,is_default FROM `Project_Users` AS `Project_User` WHERE `Project_User`.`UserId` = 26; 
Executing (default): DELETE FROM `Project_Users` WHERE `UserId` = 26 AND `ProjectId` IN (1726) 
Executing (default): INSERT INTO `Project_Users` (`id`,`is_admin`,`ProjectId`,`UserId`) VALUES (NULL,0,873,26); 

如何防止發生DELETION?

回答

0

您應該使用addProjects()代替:

user.addProjects(project).then(function(res){}); 
+0

奏效感謝ü。 –