我有这些关联
// Tasks.js
sequelize.models.tasks.belongsTo(sequelize.models.users, {
foreignKey: {
type: DataTypes.INTEGER,
field: 'ASSIGNEE',
allowNull: true
},
as: 'assignee'
});
sequelize.models.tasks.belongsTo(sequelize.models.users, {
foreignKey: {
type: DataTypes.INTEGER,
field: 'REPORTER',
allowNull: true
},
as: 'reporter'
});
// Users.js
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'assignee' });
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'reporter' });
这些关联创建了两个 FK:ASSIGNEE 和 REPORTER。但它也创建了另一个:userId。 我知道这个“userId”FK 是默认的,但我不想要它。我只想要我在关联中描述的这两个。
我如何要求sequelize忽略默认值并创建我所期望的内容?
最佳答案
用户关联发生变化
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'assignee' ,foreignKey :'ASSIGNEE'});
sequelize.models.users.hasMany(sequelize.models.tasks, { as: 'reporter' ,foreignKey :'REPORTER'});
关于mysql - Sequelize 模型中的双重关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41556442/