我使用的Rails 3和希望得到一個學生訪問基於以下Rails的查詢和多個連接模式
class Student
has_many :students_levels
has_many :levels, :through => :students_levels
end
class Class
has_many :classes_levels
has_many :levels, :through => :classes_levels
end
class Level
has_many :students_levels
has_many :classes_levels
end
class StudentsLevel
belongs_to :students
belongs_to :levels
end
class ClassesLevel
belongs_to :classes
belongs_to :levels
end
的模式,我想出了下面的查詢,但沒有類認爲它看起來是最好的Rails做事情的方式,並希望得到更多的建議。 Thx
Class.where(:id => (ClassesLevel.where(:level_id => Student.find(1).levels)))
我想將此作爲一個實例方法添加到學生,並認爲有一個更好的方法來做很多事情。
只是一個提示:稱爲'班'的班級名稱會導致許多問題。 – hade 2010-12-03 06:40:43