我有以下迁移文件db\migrate\20100905201547_create_blocks.rb
db\migrate\20100905201547_create_blocks.rb
如何专门回滚该迁移文件?
rake db:rollback STEP=1
如果要回滚的迁移是最后应用的迁移,则可以这样做。您可以将 1 替换为您想要返回的任意数量的迁移。
例如:
rake db:rollback STEP=5
还将回滚后来发生的所有迁移(4、3、2 和 1)。
要将所有迁移回滚回(并包括)目标迁移,请使用:(此更正的命令是在所有指出原始帖子中错误的评论之后添加的)
rake db:migrate VERSION=20100905201547
为了仅回滚一个特定的迁移(无序),请使用:
rake db:migrate:down VERSION=20100905201547
请注意,这不会回滚任何中间迁移 - 只有列出的迁移。如果这不是你想要的,你可以安全地运行rake db:migrate,它只会重新运行那个,跳过以前没有回滚的任何其他。
rake db:migrate
如果您想无序迁移单个迁移,还有它的逆向db:migrate:up:
db:migrate:up
rake db:migrate:up VERSION=20100905201547