0
特定の仕様に基づいて、JSONの関連モデルをレンダリングする方法を理解しようとしています。条件に基づいてjsonをレンダリングする関連モデルを含む
render json: @colleges, include: :sports
@colleges
は大学の集まりであり、すべての関連するスポーツが含まれています:これは私がこれまで持っているものです。
ただし、現在のユーザに属している場合にのみ、別の関連モデルを含めることができます。
たとえば、Favorite.where(college: @college).where(user: current_user)
の大学とユーザーに属するお気に入りを取得できます。
このレンダリングにcurrent_userと各大学に属するお気に入りを含める方法はありますか?
...それがお役に立てば幸いユーザーを想定することができますこれは適切な結果を返しますか? '@ colleges.joins(:favorite).where(user:current_user)' –
これは適切な結果をもたらしますが、ユーザーのお気に入りが関連付けられているかどうかにかかわらず、すべての大学をレンダリングしたいと思います。しかし、関連するお気に入りがあればそれを含めたい。したがって、ユーザーのお気に入りが存在しない場合、jsonは '{college:{name: 'foo'、location: 'bar'、sports:{name: 'basketball'}}のようになります。もし存在すれば '{college:{name: 'foo'、場所: 'bar'、sports:{name: 'basketball'}、{user_id:45}}' – Doug