フェスティバル、カテゴリ、提出物、およびキュレーター (ユーザー) のモデルに次の関係を設定しています。
- フェスティバルには多くのカテゴリがあります。各カテゴリには 1 つのフェスティバルがあります。
- 各カテゴリには 1 人以上のキュレーター (ユーザー) がいて、キュレーターは複数のカテゴリを持つことができます。
- 提出物には、1 つのカテゴリと 1 つのフェスティバルがあります (そのカテゴリを介して)。
- 「current_user」はログインしているユーザーです
- 「current_festival」は、現在新しい投稿を受け付けている 1 つのフェスティバルです。
キュレーター (ユーザー) がログインし、投稿のインデックスを見たとき。彼らは、(カテゴリを通じて)キュレーターである提出物のみを表示する必要があります。提出物の適切なリストを生成する方法に困惑しています。現在コントローラーにあるものは次のとおりです。
def index
@submissions = current_festival.submissions.all
end
これにより、 current_user がキュレーターであるカテゴリからだけでなく、現在のフェスティバルのすべての提出物が返されます。私が欲しいのはこのようなものですが、適切な構文がわかりません:
def index
@categories = current_user.categories.where(festival_id: current_festival.id)
@submissions = current_festival.submissions.where( category_id: "one of the @categories" )
end
適切な構文は何ですか?