db/migrate
フォルダーに移行ファイルを追加してrake db:migrate
を実行した後、前のステップに戻りたいのですが、VERSION=n
を使用するのが正しい方法だと思いますが、使用するnの正しい値を知っている。現在のn値を確認するコマンドはありますか?
rake db:migrate
の使用方法に関する完全な指示を誰かが提供できれば素晴らしいと思います。
手始めに
rake db:rollback
は1ステップ戻ります
それから
rake db:rollback STEP=n
n
マイグレーションをロールバックします。n
は、ロールバックする最近のマイグレーションの数です。
その他の参照 こちら 。
最新の移行をロールバックします。
rake db:rollback
n
最新の移行をロールバックします。
rake db:rollback STEP=n
Rails移行タスクの使用に関する完全な説明は、移行を実行するための Railsガイド にあります。
ここにいくつかあります:
rake db:migrate
-まだ実行されていないすべての移行を実行しますrake db:migrate VERSION=20080906120000
-必要なすべての移行(アップまたはダウン)を実行して、指定されたバージョンを取得しますrake db:migrate Rails_ENV=test
-指定された環境で移行を実行するrake db:migrate:redo
-1つの移行をロールバックして、再度実行しますrake db:migrate:redo STEP=n
-最後のn
移行をロールバックして、再度実行しますrake db:migrate:up VERSION=20080906120000
-指定された移行に対してup
メソッドを実行しますrake db:migrate:down VERSION=20080906120000
-指定された移行に対してdown
メソッドを実行しますそして、移行のバージョン番号をどこから取得するかについての質問に答えるために:
バージョンは、移行のファイル名の数字のプレフィックスです。たとえば、バージョン20080906120000に移行するには、次を実行します。
$ rake db:migrate VERSION=20080906120000
(Railsガイドの Running Migrations から)
最善の方法は、downまたはupを使用して特定の移行を再度実行することです(Rails 4.で変更されます)
Rails db:migrate:up VERSION = timestamp
タイムスタンプを取得する方法。このパスに移動します
/ db/migrate
復帰する移行ファイルを特定します。そのファイル名からタイムスタンプを選択します。
バージョンが20150616132425
の場合、次を使用します。
Rails db:migrate:down VERSION=20150616132425
他の人はすでにロールバックの方法を答えていますが、移行のバージョン番号を特定する方法も尋ねました。
rake db:migrate:status
は、移行バージョン、名前、およびステータス(アップまたはダウン)のリストを提供します/db/migrate