В школе много курсов.Курс имеет много разделов.Студент записывается в секцию курса.Я хочу, чтобы можно было найти всех учеников в школе.
Class School < ActiveRecord::Base
has_many :courses
has_many :sections, :through => courses
has_many :students, :through => courses, :through => sections, :through => enrollments
end
Class Course < ActiveRecord::Base
belongs_to :school
has_many :sections
has_many :students, :through => sections, :through => enrollment
end
Class Section < ActiveRecord::Base
belongs_to :course
has_many :students, :through => enrollment
end
Class Student < ActiveRecord::Base
has_many :sections, :through => enrollment
has_many :courses, :through => sections, :through => enrollment
has_many :schools, :through => courses, :through => sections, :through => enrollment
end
Зачисление - это просто таблица с идентификатором раздела и идентификатором студента, когда студент записывается в этот раздел курса.
Есть ли лучший способ сделать то, что я пытаюсь сделать здесь?
Спасибо.