テーブルの関連付け(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をコピーしました!
    目次