##【migrationについてのメモ】
マイグレーションとは。
DB内にテーブルやカラムを追加、削除したり、既存のデータに修正を加えること。
マイグレーションは次の2ステップで行う。
①DBの構造(スキーマ)を変更するコードを記述した「マイグレーションファイル」を作成する。
②「マイグレーションファイル」を「rails db:migrate」コマンドを使って、DBに適用する。(migrateする)migrateは移動、移住等の意味。
注意点
・マイグレーションファイルを作成しただけではDBに適用されない。
・マイグレーションファイルを削除しただけでもDBには適用されない。
rails db:migrateコマンドを実行して初めてDBに適用される。
マイグレーションファイルは、開発用・本番用・テスト用それぞれに適用させる必要がある。
デフォルトでは開発用に対してマイグレーションが実施される。
本番環境にマイグレーションする場合
rails db:migrate RAILS_ENV=production
テスト環境にマイグレーションする場合
rails db:migrate RAILS_ENV=test
マイグレーションは、1つのマイグレーションファイルが1つのバージョンとして扱われる。
1つのマイグレーションファイルを適用することで、DBのスキーマのバージョンを1つ上げることが出来る。
逆に、1つのマイグレーションファイルの適用を取り消すことで、バージョンを1つ下げることも出来る。
適用する(テーブルを追加する、バージョンを上げる)
rails db:migrate
適用を取り消す(テーブルを削除する、バージョンを下げる)
rails db:rollback
schema.rbについて
現在のテーブルやカラム等DBの構造を、視覚的に出力したものがdb/schema.rbファイル。
マイグレーションファイルを適用したり、適用を削除したりすると自動的に出力される。