1
我有一個場景,我試圖從一個多對多關係的表中刪除一條記錄,以及結點中匹配的recordId(通過)表連接我的兩個表。我知道有set
和get
方法創建一個表的記錄,然後在through
表中自動創建關係,但有沒有方法delete
?續集 - 通過表破壞與多對多關係的記錄
這裏的關係是:
用戶
User.belongsToMany(db.Organization, { through: 'organization_member', foreignKey: 'user_id'})
組織
Organization.belongsToMany(db.User, { through: 'organization_member', foreignKey: 'organization_id'})
注意兩個外鍵的的別名通過Sequelize駱駝情況下這就是爲什麼錯誤信息不同於協會中提到的專欄。
而我試圖在user
表上使用destroy命令,其中任何用戶都與當前用戶會話關聯的組織關聯。不幸的是,以下命令不起作用,因爲user
表中不存在organization_id
,但organization_member
接點表不存在。誰能幫忙?
deleteUsers: function(organizationId, t){
console.log("Step 10: Delete Users");
//DELETE users
return models.User.destroy({
where: {
organizationId: organizationId
}
},{ transaction: t })
}
錯誤:
{ [SequelizeDatabaseError: column "organizationId" does not exist]
感謝您的回答。 1)Both。我試圖刪除關聯,然後這些用戶成爲已刪除關聯的一部分。此方法是從我的應用程序中刪除帳戶的較大操作鏈中的一部分。 2)良好的通話。 – cphill