マイグレーションを扱うときに使ったコマンド
migrationファイルの適用状況を確認
出典
rails db:migrate:status
【Status】の列が【up】のものは実行済み
、【down】のものは未実行
です。
出典
********@mbp ******* % rails db:migrate:status
database: **************
Status Migration ID Migration Name
--------------------------------------------------
up 20221220165730 ********** NO FILE **********
up 20221221072255 Create products
up 20221224080150 ********** NO FILE **********
up 20221227063442 ********** NO FILE **********
up 20221227080056 Change name on products
down 20221227084232 Remove name from products
********** NO FILE **********
とは?
削除したマイグレーションファイルの後に********** NO FILE **********と表示されるでしょう。これは、そのマイグレーションファイルが特定の環境で一度実行されたが、db/migrate/ディレクトリの下に見当たらない
場合に表示されます。
出典
マイグレーションファイルを削除する場合
マイグレーションファイルを削除する際は必ずdown状態になっているのを確認してから削除
するようにしましょう。
出典
特定のバージョンのスキーマに変更
出典
rails db:migrate:up VERSION=**********
特定のマイグレーションをupまたはdown方向に実行する必要がある場合は、db:migrate:upまたはdb:migrate:downタスクを使います。以下に示したように、適切なバージョン番号を指定するだけで、該当するマイグレーションに含まれるchange、up、downメソッドのいずれかが呼び出されます
。
出典
マイグレーションをロールバック
マイグレーションに誤りがあって訂正
したい場合などに使用する
出典
bin/rails db:rollback
changeメソッドを逆転実行するかdownメソッドを実行する
形で直前のマイグレーションにロールバックします。マイグレーションを2つ以上ロールバックしたい場合は、STEPパラメータを指定できます。
$ bin/rails db:rollback STEP=3
最後に行った3つのマイグレーションがロールバックされます。
マイグレーションのカラムの変更は一つずつ行う
多分それを書いていると思う。