使用多个指向同一张表的外键来顺序化级联删除?

问题描述

用户删除时,我希望与用户关联的SuggestionInterestFriendBlock行也被删除

关联的SuggestionInterest行将被删除,而关联的FriendBlock行则不会被删除。我不确定为什么,但是我想是因为有两个外键指向UserFriend表中的Block表。

我们将不胜感激。这是关联:

SuggestionModel.belongsTo(
  usermodel,{ foreignKey: 'suggestingUserId',as: 'suggestingUser',onDelete: 'cascade' }
);

InterestModel.belongsTo(
  usermodel,{ foreignKey: 'userId',as: 'user',onDelete: 'cascade' }
);

FriendModel.belongsTo(
  usermodel,{ foreignKey: 'initiatingUserId',as: 'initiatingUser',{ foreignKey: 'targetUserId',as: 'targetUser',onDelete: 'cascade' }
);

BlockModel.belongsTo(
  usermodel,{ foreignKey: 'blockerUserId',as: 'blockerUser',onDelete: 'cascade' },);

BlockModel.belongsTo(
  usermodel,{ foreignKey: 'blockedUserId',as: 'blockedUser',onDelete: 'cascade' }
);

usermodel.hasMany(
  FriendModel,as: 'initiatingMatches',onDelete: 'cascade',hooks: true }
);

usermodel.hasMany(
  FriendModel,as: 'targetMatches',hooks: true }
);

usermodel.hasMany(
  InterestModel,as: 'interests' }
);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)