Rails4 列名の変更
データベースにテーブルを作ったが、列名を変更したくなった。
列名の変更方法を調べたのでメモ。
①マイグレーションファイルを作成
コマンドプロンプトで下記のようなコマンドを実行する。
rails g migration RenameColumnToTargetTable
(例)
コマンドプロンプトで下記のコマンドを実行
rails g migration RenameColumnToUsers
※ここではusersテーブルの列名を変更する。
すると、下記のようなマイグレーションファイルが作成される。
※数字の部分は環境によって異なる
db/migrate/20140108005106_rename_column_to_users.rb
②マイグレーションファイルを編集
①で作成したマイグレーションファイルを開き、下記のように編集する。
class RenameColumnToTargetTable < ActiveRecord::Migration def change rename_column :target_table, :old_column, :new_column end end
(例)
db/migrate/20140108005106_rename_column_to_users.rbを編集する。
class RenameColumnToUsers < ActiveRecord::Migration def change rename_column :users, :plan, :plan_type end end
※ここではusersテーブルの列planをplan_typeに変更する。
③最後にマイグレーションを実行
コマンドプロンプトで下記のコマンドを実行
rake db:migrate