migrationファイルでよく使う記述。
テーブルにカラムを追加・削除する時の書き方。
結論
# カラムを追加するコード
add_column :target_table, :column_name, :string, null: false, after: :before_column_name, comment: 'カラムを追加するとき'
# カラムを削除するコード
remove_column :target_table, :column_name, :string, null: false, after: :before_column_name, comment: 'カラムを削除するとき'
カラムを追加する場合は
add_colum :追加するカラムのテーブル, :追加するカラム名, {その他のオプション}
カラムを削除する場合は
remove_colum :削除するカラムのテーブル, :削除するカラム名, {その他のオプション}
その他のオプションについては、カラムの情報によって適宜変更します。
特定のカラムの前後に追加したい場合などはbefore: :カラム名 / after: :カラム名 で指定できます。
環境
OS: MacOS
メモリ: 32GB
Dependents
Rails6
Ruby 2.6
CentOS7 on Vagrant
Mysql 5.7
まとめ
migrationで使用する、カラムの追加・削除について紹介しました。
頻出するコードなので、数回書いていれば自然と覚えると思います。
重要なカラムを追加する場合は、before、afterオプションでカラムの追加位置を指定するなど、気をつけておきたいですね!