【发布时间】:2015-09-11 23:11:54
【问题描述】:
我用过EntityFramework、Waterline和Mongoose等ORMS。我刚开始使用Sequelize。我创建了一个示例模型。后来我想在对应相同模型的表中添加另一列。当我编辑模型时,除非我删除表,否则新字段似乎不会反映在表中。我应该使用迁移吗?阅读documentation 后,我感到困惑。有人可以帮帮我吗?
【问题讨论】:
标签: node.js entity-framework sequelize.js
我用过EntityFramework、Waterline和Mongoose等ORMS。我刚开始使用Sequelize。我创建了一个示例模型。后来我想在对应相同模型的表中添加另一列。当我编辑模型时,除非我删除表,否则新字段似乎不会反映在表中。我应该使用迁移吗?阅读documentation 后,我感到困惑。有人可以帮帮我吗?
【问题讨论】:
标签: node.js entity-framework sequelize.js
是的,您应该使用迁移,就像您在应用程序启动时在 sequelize 中编辑模型一样,它只会在表不存在时创建表。它不会检查架构是否不同,因此不会更新表的架构。
如果我是你,我会安装sequelize-cli,然后运行sequelize init 命令。这会将您的项目设置为可以使用迁移。
请注意,我们使用 sequelize 迁移,您必须明确定义主键、updatedAt 和 createdAt 列,否则它们将无法很好地创建!
关于迁移的文档还不错:http://sequelize.readthedocs.org/en/latest/docs/migrations/
【讨论】: