2 つのモデル間に「多くのスルー」関係があります。
Task:
has_many :placements
has_many :games, :through => :placements
Game:
has_many :placements
has_many :tasks, :through => :placements
Placements:
belongs_to :task
belongs_to :game
コントローラーの index メソッドで、特定のゲーム ID を持つタスクのみを一覧表示したいと考えています。私が思いついた解決策は、ID の配列を使用していますが、これを行う方法はもっと簡単であるに違いないと考えています。
@tasks = Task.find(Placement.where(:game_id => current_user.selectedgame).collect(&:task_id))
どんな提案でも大歓迎です。