【问题标题】:Deleting old migrations pushed to Heroku删除推送到 Heroku 的旧迁移
【发布时间】:2019-04-09 11:16:05
【问题描述】:
 Status   Migration ID    Migration Name
--------------------------------------------------
D, [2018-11-06T03:46:52.337306 #4] DEBUG -- :  (1.7ms)  `SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
   up     20180903011647  Create movies
   up     20180903012838  Add fields to movies
   up     20180922012345  Add more fields to movies
   up     20181023010527  Create reviews
   up     20181023015412  ********** NO FILE **********
   up     20181102193810  ********** NO FILE **********
  down    20181105211502  Add extra image fields to movies
  down    20181106003841  Add main image to movies

如何删除 heroku 中的旧迁移? .当我尝试在最后两次迁移中运行 heroku run rake db:migrate 时,这些旧表似乎会导致错误。

我想删除2018102301541220181102193810。非常感谢任何帮助。

【问题讨论】:

  • 你能说明你遇到了什么错误吗?
  • 不是删除旧的迁移,而是创建新的空白文件,并结合20181023015412 ?然后在该文件中不添加任何内容,只需添加 def change end
  • 这是我在尝试保存上传的图像时遇到的错误。 NoMethodError (未定义方法main_image_will_change!' for #<Movie:0x00559789911998>

标签: ruby-on-rails ruby database heroku ruby-on-rails-5


【解决方案1】:

根据您提供的数据,您在最近两次迁移中都跑完了。所以我认为这两个版本已从 SchemaMigration 表中删除。

现在你只需要传递你需要删除那些迁移文件的提交。它将在以后的迁移中正常工作。请在关注前确认。

注意事实上,如果您遇到错误,请发布错误

【讨论】:

  • 我最终在 Heroku 中删除了我的数据库,并且它被删除了。无论如何,这都是样本数据。谢谢。
猜你喜欢
  • 1970-01-01
  • 2019-12-26
  • 1970-01-01
  • 1970-01-01
  • 2013-01-26
  • 2020-01-19
  • 1970-01-01
  • 2018-11-12
  • 1970-01-01
相关资源
最近更新 更多