首页 > 解决方案 > 如何使用 sequalize-cli 删除迁移

问题描述

我手动删除了一个迁移文件名20171125081136-create-task.js

删除迁移文件后,我运行了这个命令

db:migrate:undo:all

运行此命令时,我在终端中遇到错误: ERROR: Unable to find migration: 20171125081136-create-task.js.

由于这个错误,我被卡住了,无法撤消存在的其他迁移文件。

标签: sequelize.jssequelize-cli

解决方案


在您的情况下,您必须重新添加已删除的迁移文件,因为 Sequelize 需要它来回滚您的迁移。如果没有,可以添加一个名为20171125081136-create-task.js. 该文件必须具有down返回成功承诺的函数。

'use strict';

module.exports = {
  up: function(queryInterface, Sequelize) {
    return Promise.resolve()
  },

  down: function(queryInterface) {
    return Promise.resolve()
  }
};

展望未来,如果您想删除迁移:

  1. 撤消最新的迁移:node_modules/.bin/sequelize db:migrate:undo
  2. 删除最新的迁移文件

推荐阅读