IT技術にまつわる実験ノート

「長編を書くより、短編を数多く完成させてください。それが上達への近道です」 by 手塚治虫

Rails のマイグレーションファイルの記述をミスったのでロールバックする

ミス発見

email カラムの型を Date型にしてしまっていた。なんてこったい。

f:id:matt-note:20181105175527p:plain

↓ 修正

f:id:matt-note:20181105175612p:plain

 

ロールバックしてみる

ロールバックの前に、bin/rails db:migrate:status を実行してみる。このコマンドで現在のマイグレーションのバージョンを確認できるとのこと。Status が up となっているため、マイグレーションを実行済みであることがわかる。ここでは、このマイグレーションを取り消したい。

f:id:matt-note:20181105175712p:plain

 

1つ前のバージョンを取り消すだけなので、bin/rails db:rollback コマンドを実行する。

f:id:matt-note:20181105175927p:plain

 

もう一度 bin/rails db:migrate:status を実行してみると、Status が down となっている。マイグレーションが取り消されたことがわかる。

f:id:matt-note:20181105180038p:plain

 

ファイルを修正してマイグレーションを再実行

通常通り、マイグレーションを実行する。

f:id:matt-note:20181105180416p:plain

 

データベースを確認する

無事、email を文字列で保存することができるようになった。

f:id:matt-note:20181105180538p:plain