なぜなら。
db:reset
< db:migrate:reset
という関係で、後者の方が強力だからだ。
db:migrate:reset
はすべてをやり直してくれる。
自分はこの関係を理解しておらず 「db:resetの方が強力だ」と思い込んでいたため、はまった。
両者の違い
- db:reset はマイグレーションファイルを編集しても、その内容は反映されない。スキーマファイル ( db/schema.rb ) だけを利用する。
- db:migrate:reset はマイグレーションファイルを直接利用する。つまり、変更が反映される。
備考
- rake db:reset と rake db:migrate:reset の違い を参考にした
- 語感的に db:reset の方が強そうなのだが、イメージとは逆だった。
Links
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。