こんにちは、Rails初心者のゼキです。
- DB
- migrationfile(マイグレーションファイル)
- schema.rb
rails db:migrate(db:rollback)した際にこれらがどのような関係性と役割を持って動作しているかを学びましたのでまとめてみます。
関係性
-
db:migrate(db:rollback)
の実行によって、migrationファイル
に記載された内容がDBに記入される。 - その後、自動的に
db:schema:dump
が実行され、scheme.rb
が更新される。
役割
-
scema.rb
- migrateしたことによって変化した現在のDBのテーブル構造を表している。
-
migrationfile
- データベースに記入される内容
- db:migrate することで、その内容に基づいたデータテーブルがDBに生成される
その他学び
- scema.rbを直接編集する意味はない
- scema.rbは現在のDBのテーブル構造を表示しているだけのファイルなので