Sequelize.js 使用引用表中的其他列替换ID

Sequelize.js 使用引用表中的其他列替换ID,sequelize.js,Sequelize.js,我有一个项目模型,它保存相关方所有者的ID,如项目经理、设计师、用户体验和项目所有者。他们都是用户,我想得到所有包含所有者名称的项目。喜欢 id、pm、设计师、用户体验、所有者。 我的模型: module.exports = function (sequelize, DataTypes) { return sequelize.define('Project', { Id: { type: DataTypes.INTEGER(11), allowNull: false, primaryKey: t

我有一个项目模型,它保存相关方所有者的ID,如项目经理、设计师、用户体验和项目所有者。他们都是用户,我想得到所有包含所有者名称的项目。喜欢 id、pm、设计师、用户体验、所有者。 我的模型:

module.exports = function (sequelize, DataTypes) {
return sequelize.define('Project', {
Id: {
type: DataTypes.INTEGER(11),
allowNull: false,
primaryKey: true,
autoIncrement: true,
field: 'id'
},
ownerId: {
type: DataTypes.INTEGER(11),
allowNull: true,
field: 'owner_id'
},
pmId: {
type: DataTypes.INTEGER(11),
allowNull: true,
field: 'pm_id'
},
designerId: {
type: DataTypes.INTEGER(11),
allowNull: true,
field: 'designer_id'
},
uxId: {
type: DataTypes.INTEGER(11),
allowNull: true,
field: 'ux_id'
}
}, {
tableName: 'project',
timestamps: false,
engine: 'InnoDB',
charset: 'utf8',
classMethods: {
associate(models) {
models.Project.belongsTo(models.User, {
'as': 'owner'
foreignKey: 'ownerId',
otherKey: 'id'
});
models.Project.belongsTo(models.User, {
'as': 'projectManager'
foreignKey: 'pmId',
otherKey: 'id'
});
models.Project.belongsTo(models.User, {
'as': 'designer'
foreignKey: 'designerId',
otherKey: 'id'
});
models.Project.belongsTo(models.User, {
'as': 'ux'
foreignKey: 'uxId',
otherKey: 'id'
});
})};
sequelize.define('User', {
id: {
type: DataTypes.INTEGER(11),
allowNull: false,
primaryKey: true,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
}
})