問題一覧に戻る
中級高度なデータベース
問題35: 関連付け応用 - has_many :through
Railsでhas_many :through関連を使ってモデル間の間接的な関係を作成する方法を学習します。この強力な関連タイプは、結合モデルに追加属性を持つ多対多の関係を設定でき、チームへのユーザーメンバーシップのような複雑なドメインモデリングに最適です。
class User < ApplicationRecord
# メンバーシップへの直接関連
has_many :
# メンバーシップを通じたチーム
has_many :teams, : :memberships
end
class Membership < ApplicationRecord
# メンバーシップはユーザーに属する
:user
# メンバーシップはチームに属する
belongs_to :
end