我正在编写一个使用nodejs、express和sequelize的铅捕获应用程序。我有一个Lead对象,但是我想在模式中引入一个新的表LeadSource,而铅有一个FK到LeadSource。
/path/to/model/Lead.js
'use strict';
module.exports = (sequelize, DataTypes) => {
var Lead = sequelize.define('Lead', {
id: {
type: DataTypes.UUID,
defaultValue: DataTypes.UUIDV4,
allowNull: false,
primaryKey: true
},
first_name: {
type: DataTypes.STRING,
},
last_name: {
type: DataTypes.STRING,
},
email: {
type: DataTypes.STRING,
allowNull: false,
},
});
return Lead;
};这是LeadSource的模式
LeadSource = sequelize.define('LeadSource', {
id: { type: Sequelize.INTEGER },
name: { type: Sequelize.STRING }
});我的问题是:
发布于 2020-05-24 00:59:43
是的,您可以定义模型之间的关系,同时将每个模型保存在一个单独的文件中。
下面是如何在联想文件中定义铅和LeadSource之间的Lead.js
module.exports = (sequelize, DataTypes) => {
var Lead = sequelize.define('Lead', {
// ...
})
Lead.associate = function (models) {
// associations can be defined here
//One-To-One relationship with foreign key added to Lead
Lead.belongsTo(models.LeadSource, {
foreignKey: { name: 'leadSourceId' }
})
//One-To-Many relationship with foreign key added to Lead
models.LeadSource.hasMany(Lead, {
foreignKey: { name: 'leadSourceId' }
})
}
return Lead;
}https://stackoverflow.com/questions/61977028
复制相似问题