テーブルの関連付け(has_many・belongs_to)
サービスを作る際、データベースのテーブルをそれぞれ関連付けることは多いです。
そのような際に使えるのが「has_many」と「belongs_to」です。
目次
has_many
テーブル同士を関連づけるためのものです。自分のテーブルが対象テーブルを複数もつ場合に使用。
「AはBを所有している」
has_many :agencies
#「feeテーブル」は「agencyテーブル」を所有
# (Feeモデルの中にagencyのデータを反映させる場合など)
#複数形にする事
belongs_to
自分のテーブルが対象テーブルのレコードに所属する(対象テーブルのidカラムがある)場合に使用。
「BはAによって所有されている」
belongs_to :fee, optional: true
#「agencyテーブル」は「feeテーブル」によって所有されている。
# (Feeモデルの中にagencyのデータを反映させる場合など)
#単数形にする事
- URLをコピーしました!