Railsを使っていると稀にカラムを追加したくなることあります。
そんな時は大抵やり方を忘れているもの。
そこでメモとしてブログに書いておけば安心かな・・・
いつも悩むのがテーブル名。
本来はモデル名なので単数形のはずが、なぜか複数形で書く仕様。
どう考えても納得いかないので覚えない訳で・・・
さて、手順は以下の通り。(シンプルなのにね・・・)
1.マイグレーションファイルの作成
既存のモデル:sampleに新たにテキスト型のカラムstatusを追加する場合
>rails g migration AddStatusToSamples status:string
ここで注意するのはテーブル名に相当するモデル名をコントローラー名に
する点です。
(※モデル名:sample のコントローラ名はsamplesにするルールより)
この様に書くことでrailsはadd_status_to_samplesと解釈する様です。
この処理により生成されたファイルの中身は、
class AddStatusToSamples
end
となります。
2.カラム追加を実行
ターミナルから以下を実行。
>rails db:migrate
以上で完了です。![](https://blogimg.goo.ne.jp/img_emoji/ee_2.gif)
そんな時は大抵やり方を忘れているもの。
そこでメモとしてブログに書いておけば安心かな・・・
いつも悩むのがテーブル名。
本来はモデル名なので単数形のはずが、なぜか複数形で書く仕様。
どう考えても納得いかないので覚えない訳で・・・
さて、手順は以下の通り。(シンプルなのにね・・・)
1.マイグレーションファイルの作成
既存のモデル:sampleに新たにテキスト型のカラムstatusを追加する場合
>rails g migration AddStatusToSamples status:string
ここで注意するのはテーブル名に相当するモデル名をコントローラー名に
する点です。
(※モデル名:sample のコントローラ名はsamplesにするルールより)
この様に書くことでrailsはadd_status_to_samplesと解釈する様です。
この処理により生成されたファイルの中身は、
class AddStatusToSamples
def change
end
add_column :samples, :status, :string
end
end
となります。
2.カラム追加を実行
ターミナルから以下を実行。
>rails db:migrate
以上で完了です。
![](https://blogimg.goo.ne.jp/img_emoji/ee_2.gif)