回滚 ActiveRecord 中的所有迁移

Rollback all the migrations in ActiveRecord

如何删除/回滚所有已 运行 的迁移,而无需删除和设置数据库

rake db:rollback

只返回一个版本。我怎样才能让它一路走下去?

一种方法是:

rake db:rollback STEP=10000000 

这几乎意味着您要倒退很多步骤,以至于迁移总是转到第 0 步。 另一种方式是:

  rake db:migrate VERSION=0

更多参考文献here.

您可以 运行 $ rake db:migrate:status 查看所有迁移以及它们是处于启动还是关闭状态。转到该列表中的第一个迁移 运行:

 rake db:rollback VERSION=version_id_shown_by_migrate_status_list_you_just_did

请注意,如果您撤消所有迁移,则在删除列或表时所有数据都将丢失。然后,您可以通过正常 rake db:migrate

重新加载迁移

要回滚所有迁移,请使用 bin/rake:db reset。 请注意,如果无法回滚迁移,rake db:reset 可能会失败。

References here