如何删除/回滚已运行的所有迁移,而无需删除和设置数据库
rake db:rollback
只返回一个版本。我怎么能让它一直走?
答案 0 :(得分:2)
一种方法是:
rake db:rollback STEP=10000000
这几乎意味着黑客回过头来这么多步骤,迁移总是进入第0步。 另一种方式是:
rake db:migrate VERSION=0
更多参考资料here.
答案 1 :(得分:0)
您可以运行$ rake db:migrate:status
来查看所有迁移以及它们是处于up还是down状态。转到该列表中的第一个迁移并运行:
rake db:rollback VERSION=version_id_shown_by_migrate_status_list_you_just_did
请注意,如果撤消所有迁移,则删除列或表时将丢失所有数据。然后,您可以通过正常的rake db:migrate
答案 2 :(得分:0)
要回滚所有迁移,请使用bin/rake:db reset
。
请注意,如果无法回滚迁移,则rake db:reset可能会失败。