在 Rails 中工作,我正在努力输出 2012 年秋季季度的用户课程列表。我在这里有 3 个重要模型:用户、宿舍和课程。根据我所做的其他工作,我很确定我的模型协会是正确的,但对于那些感兴趣的人:
- 用户 has_many :quarters 和 has_many :courses through Quarters
- Quarter belongs_to 用户和 HABTM 课程(通过适当的连接表)
- 课程 has_many users through quarters 和 HABTM Quarters
我想实现一个查询来收集特定季度的课程,例如
current_user.quarters.where(:term => "Fall 2012").courses.each do |c|
puts c.title
end
但这会导致我理解的错误“未定义的方法'课程'”,但我仍然想像上面的代码那样访问对象数组的所有关联对象,而不是运行我需要的嵌入式循环:
current_user.quarters.where(:term => "Fall 2012").courses.each do |q|
q.courses.each do |c|
puts c.title
end
end
谢谢!任何想法表示赞赏:)