Railsでデータベースのリセットをしよう!
データベースを空にするために、
rails db:reset
と
rails db:migrate:reset
の2種類存在する。この2つについて考えていきます。
rails db:resetとは
rails db:reset
は2種類のコマンドを実行するのと同じ働きがあります。
上の2種類のコマンドを実行するのと同等なので、一度データベースを削除して、スキーマからテーブルを再度作成し、シードデータを用いてデータベースの初期化を実行します。
rails db:migrate:resetとは
rails db:migrate:reset
では、DBの削除、DBの作成、rails db:migrate
が行われます。なので、seeds.rbの読み込みがないため、ダミーデータのようなものは作成されません。
どちらを使うか
seeds.rbの読み込みまでしたい場合は、rails db:reset
読み込みまではしたくない場合は、rails db:migrate:reset
ということになる。
参考
https://k-koh.hatenablog.com/entry/2020/09/25/232829 https://railsguides.jp/active_record_migrations.html https://note.com/kentarotawara/n/n976705aa4cb8 https://railsdoc.com/rake#rake_db_migrate