我写了一个迁移来向某个表 foo_bar
添加一个新列 bar
。当需要合并我的分支时,我发现一个同事和我写了相同的迁移。我们决定放弃我的,只使用他们的。
现在,当我运行测试时,出现此错误:
Unhandled rejection SequelizeDatabaseError: column "foo_bar" of relation "bar" already exists
我似乎无法摆脱这一点,也无法在网上找到任何有关如何平息这种废话的内容。
我做过什么
我的尝试
唯一似乎对我有用的是注释掉对我们都重叠的列的所有 addColumn 调用。我绝对不可能再忍受下去了!
有没有办法以某种方式清除以前在我的机器上运行的迁移缓存?
最佳答案
事实证明,您可以通过使用 db:migrate:undo:all
命令撤消所有迁移来恢复到初始状态。您还可以通过在 --to 选项中传递其名称来恢复到特定迁移。
每个 http://docs.sequelizejs.com/manual/migrations.html 的 npx sequelize db:migrate:undo:all
问题解决了!
关于javascript - 未处理的拒绝 SequelizeDatabaseError : column "foo_bar" of relation "bar" already exists,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55995836/