Node.js 如何在Sequelize迁移中创建关联?
我正在使用迁移创建实体。当然,它们之间也有一些关系。到目前为止,通过使用Node.js 如何在Sequelize迁移中创建关联?,node.js,migration,sequelize.js,Node.js,Migration,Sequelize.js,我正在使用迁移创建实体。当然,它们之间也有一些关系。到目前为止,通过使用sync(true),我享受到了Sequelize在数据库级别为我实现关系的好处 如何在迁移中表达新的关系 一对多:我应该处理外键列吗 多对多:我应该创建中间表并在每个实体的表上设置外键吗 或者:我应该运行迁移,然后同步(false)? 那些不再相关的关系呢?当我使用迁移时,我将sync:false设置为false 为了建立关联,我的模型最终是这样的: User.js: module.exports = function(s
sync(true)
,我享受到了Sequelize在数据库级别为我实现关系的好处
如何在迁移中表达新的关系
同步(false)
?
那些不再相关的关系呢?当我使用迁移时,我将sync:false设置为false 为了建立关联,我的模型最终是这样的: User.js:
module.exports = function(sequelize, DataTypes) {
var User = sequelize.define("User", {
"fname": {
"type": DataTypes.STRING,
"unique": false,
"allowNull": false
},
"lname": {
"type": DataTypes.STRING,
"allowNull": false
}
}, {
"tableName": "Users",
"classMethods": {
"associate": function (models) {
Locale.hasMany(models.Permissions);
}
}
});
return User;
};
如果该表不存在,则仍将创建该表。但是,我建议创建表仍然是迁移的一部分。请注意,在迁移过程中,要创建一个包含id、updatedAt、createdAt和PermissionId列的表(例如上面的示例)