我正在创建一些模型,用户,朋友,...。 这是User模型assoc:
User.belongsToMany(models.User, {as: 'Friends', through: models.Friends});
这是Friends模型:
const Friends = sequelize.define('friends', {
accepted: {
type: DataTypes.BOOLEAN,
defaultValue: false,
allowNull: false
}
});
return Friends;
};
显然我得到了一个这样的表:
accepted | createdAt | updatedAt | userId | FriendId
所以当我尝试创建一些友谊行时,例如:
await models.Friends.create({accepted: true, userId: 2, FriendId: 1});
await models.Friends.create({accepted: true, userId: 3, FriendId: 2});
我得到一个错误:
SequelizeForeignKeyConstraintError: insert or update on table "friends" violates foreign key constraint "friends_FriendId_fkey"
因为userId或friendsId不能为两次?这怎么了?谢谢!