私が持っています移行ファイル db\migrate\20100905201547_create_blocks.rb
。
その移行ファイルを具体的にロールバックするにはどうすればいいでしょうか?
ベストアンサー1
rake db:rollback STEP=1
ロールバックする移行が最後に適用されたものである場合、これを行う方法があります。 戻りたい移行の数に応じて 1 を代入できます。
例えば:
rake db:rollback STEP=5
後で発生したすべての移行 (4、3、2、および 1) もロールバックします。
すべての移行をターゲット移行までロールバックするには、次のコマンドを使用します。(この修正されたコマンドは、元の投稿のエラーを指摘するすべてのコメントの後に追加されました)
rake db:migrate VERSION=20100905201547
特定の移行を1 つだけ(順序どおりに)ロールバックするには、次を使用します。
rake db:migrate:down VERSION=20100905201547
または
rails db:migrate:down VERSION=20100905201547
これによって、途中の移行はロールバックされず、リストされている移行のみがロールバックされることに注意してください。これが意図したものではない場合は、安全に実行することができ、rake db:migrate
その移行のみが再実行され、以前にロールバックされていない他の移行はスキップされます。
また、単一の移行を順序どおりに移行しない場合は、その逆も存在しますdb:migrate:up
。
rake db:migrate:up VERSION=20100905201547