環境構築がある程度完成して、アプリ開発に映ったらまずmodelとテーブルを作成。
モデルの作成の基本を簡単にまとめます。
基本の流れ
①modelの作成
rails g model [model名] column1:data型, column2:data型, ...
※ model名はテーブル単数系
※ modelとテーブルは1対1
※ references型を指定すると、アソシエーションを設定できる
ex. rails g model [model名] [参照先]:*references*
※ rails g model
コマンドを実行すると、以下4つのファイルが自動生成される。うち、1と2は今回登場するのでよくおさえておく
1. モデルのクラスファイル(/app/models/[モデル名].rb)
2. マイグレーションファイル(/db/migrate/yyyyMMddxxxx_create_[テーブル名])
3. モデルの自動テスト
4. モデルの自動テストで使うfictureファイル
②テーブルを作成/更新
rails db:migrate
コマンドを実行
③テーブルを参照し、問題なく作成できているか確認する
上記の流れの主な留意点
①外部キー制約について
rails g model
コマンド実行時に外部キーのカラムにreferences型を設定していた場合
以下のような記述があるので、修正する(追記する)
t.references :[自身のテーブル名単数形]`
↓
`t.references :[自身のテーブル名単数形], foreign_key:true`
テーブルを作成/更新
後で外部キーをカラムごと追加して設定したい場合
rails g migration [クラス名] [参照先クラス名]:references, ...
コマンドを実行
※ [クラス名]はAddXXXRefsToYYYの形にする。XXX:参照先クラス YYY:参照元クラス
※ ちなみにデータ型にstringなどを指定すれば通常のカラムを追加することができる
テーブルを作成/更新