如何添加,删除Sequelize CLI中的新列
我刚开始使用Sequelize和Sequelize CLI
由于这是一个开发时间,因此频繁地添加和删除列。 什么是最好的方法添加一个新的列到现有的模型?
例如,我想要一个新的专栏“ 完成 ”到Todo模型。 我将这个列添加到models / todo.js。 下一步是什么?
我试过sequelize db:migrate
不工作: “没有执行迁移,数据库模式已经是最新的。”
如果使用sequelize-cli ,则需要先创build迁移。 这只是一个文件,告诉引擎如何更新数据库,以及如何在出现问题时回滚更改。 你应该总是提交这个文件到你的仓库
$ sequelize migration:create
迁移文件如下所示:
module.exports = { up: function(queryInterface, Sequelize) { // logic for transforming into the new state queryInterface.addColumn( 'Todo', 'completed', Sequelize.BOOLEAN ); }, down: function(queryInterface, Sequelize) { // logic for reverting the changes queryInterface.removeColumn( 'Todo', 'completed' ); } }
然后,运行它:
$ sequelize db:migrate