6
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

マイグレーションファイルの作成、変更、削除まで

Last updated at Posted at 2019-12-21

今回は、物件のファイルを作ることを想定します。

####流れ
一度、マイグレファイルを作成したが、カラムをつけ忘れたのでカラムを付け足したい。

マイグレファイル作成→削除→マイグレファイル編集

###1.マイグレファイルを作成する

$ rails g migration CreateHomes

###2.作成したマイグレファイルをエディターで編集する

create_homes.rb

class CreateHomes < ActiveRecord::Migration[5.2]
  def change
    create_table :homes do |t|
      t.string :"物件名"
      t.string :"賃料"
      t.string :"住所"
      t.text :"備考"
    end
  end
end

###3.マイグレーションをターミナル上で入力

$ rails db:migrate

###4.マイグレファイルを削除するため、削除用のファイルを作る

rails g migration RemoveColumnsFromeHomes

###5.作ったファイルを編集する

remove_columns_from_homes.rb

class RemoveColumnsFromHomes < ActiveRecord::Migration[5.2]
  def change
    remove_column :Homes, :"物件名", :string
    remove_column :Homes, :"賃料", :text
    remove_column :Homes, :"住所", :text
    remove_column :Homes, :"備考", :text
  end
end

###6.マイグレーションをターミナル上で入力

$ rails db:migrate

※こうすることで、再び作り直すことができます。
rollbackでも削除は、可能ですが複数開発のときに何を編集したのか分からなくなるのでやめましょう。

###7. カラムを追加するためのマイグレファイル作成

$ rails g migration AddColumnsToHomes

###8.マイグレファイルを編集

add_columns_to_homes.rb

class AddColumnsToHomes < ActiveRecord::Migration[5.2]
  def change
    add_column :homes, :property, :string
    add_column :homes, :rent, :text
    add_column :homes, :address, :text
    add_column :homes, :age, :text
    add_column :homes, :remarks, :text

  end
end


何かを分からないことがありましたら、コメントを頂ければ1日以内に返信するように致します

6
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?