我有一个迁移文件db\migrate\20100905201547_create_blocks.rb。
如何具体回滚该迁移文件?
我有一个迁移文件db\migrate\20100905201547_create_blocks.rb。
如何具体回滚该迁移文件?
当前回答
rake db:migrate:down VERSION=20100905201547
将回滚特定的文件。
要找到所有迁移的版本,你可以使用这个命令:
rake db:migrate:status
或者,简单地说,迁移文件名的前缀就是需要回滚的版本。
请参阅Ruby on Rails指南中关于迁移的条目。
其他回答
我发现这些步骤最有用。
执行rails db:migrate:status命令查看状态。然后,您将对想要删除的迁移有一个很好的了解。
然后执行rails db:rollback命令将修改的内容逐一恢复。这样做之后,您可以再次检查状态,以充分自信。
下一步,如果您想删除或删除。执行rails d migration <migration_name>。这将清理您创建的版本。
完成这些之后,您可以继续进行新的更改。
Use:
rake db:migrate:down VERSION=your_migrations's_version_number_here
版本是迁移文件名上的数字前缀。
如何找到版本:
迁移文件存储在rails_root/db/migrate目录中。找到要回滚到的适当文件并复制前缀编号。
例如:
文件名称:20140208031131_create_roles.rb
则版本号为20140208031131。
如果你想要回滚和迁移,你可以运行:
rake db:migrate:redo
也就是:
rake db:rollback
rake db:migrate
如果您想从上次迁移中恢复,请使用rake db:rollback命令。它对我很有效!
您可以使用down migration命令回退迁移,如下所示:
rake db:migrate:down VERSION=20100905201547