我有两个模型之间的“多通”关系:
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
在我的控制器的索引方法中,我只想列出那些具有特定游戏 ID 的任务。我想出的解决方案使用了一组 id,但我认为必须有一种更简单但对我来说不太明显的方法!
@tasks = Task.find(Placement.where(:game_id => current_user.selectedgame).collect(&:task_id))
欢迎任何建议。