当我尝试销毁关联中使用的行时,是否有办法使Sequelize.js引发异常?
作为示例,我们有一个Roles
的表和一个Users
的表。他们具有N:M关联,因此任何用户都可以拥有许多角色。
问题是当用户的角色很少并且包含的角色的行被删除时。用户只是松开了这个角色。除非先删除关联,否则如何防止删除角色?
答案 0 :(得分:1)
您可以使用onDelete和onUpdate在关联中对此进行控制,如下所示:
User.hasMany(Roles, { foreignKey: "whatever", onDelete: 'restrict', onUpdate: 'restrict'});
手册mentions the options 的外键部分...