Sequelize.js 如何在多对多关系中禁用复合键上的唯一约束?
当Sequelize中的两个模型通过连接表在多对多关系中关联时,将从这两个模型的两个外键中创建一个复合键。 在这里找到的sequelize文档中: 它表示可以强制表具有ID privateKey A和C是多对多关系中的两个模型。连接表/模型为B。 模型A和C的定义与本例无关Sequelize.js 如何在多对多关系中禁用复合键上的唯一约束?,sequelize.js,Sequelize.js,当Sequelize中的两个模型通过连接表在多对多关系中关联时,将从这两个模型的两个外键中创建一个复合键。 在这里找到的sequelize文档中: 它表示可以强制表具有ID privateKey A和C是多对多关系中的两个模型。连接表/模型为B。 模型A和C的定义与本例无关 //Defining the junction table B with the private key ID sequelize.define('B', { id: { type: DataTypes.INTE
//Defining the junction table B with the private key ID
sequelize.define('B', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true,
allowNull: false
}
}, { timestamps: false });
A.belongsToMany(Profile, { through: B });
C.belongsToMany(User, { through: B });
即使将我的ID私钥添加到该表中,这两个外键的唯一约束仍然存在。如何禁用该约束?找到答案 对于任何浏览网页寻找答案的人来说,答案很简单,你必须通过模型将
unique:false
选项传递给他们
A.belongsToMany(Profile, { through: { model: B, unique: false}});
C.belongsToMany(User, { through: { model: B, unique: false}});