我有一个特殊的关系,如下所示
班级学校有多个部门,部门属于学校
班级部门有很多教师,教师属于部门
我希望能够根据他们被雇用的时间(在这种情况下只是“created_at”)列出属于学校的所有教师,但不是按部门组织。我希望ruby on rails有一个非常酷的查找功能:D但如果不是,我将如何检索此列表?也许下面类似的东西可以用来构建一个数组 - 如果是这样,你会如何通过Teach created_at值来组织它?
School.departments.each.teachers.each do |t|
teacher_list << t
end
答案 0 :(得分:1)
您可以为教师使用has_many :through
,以便您可以直接在School
上查询教师:
class School < ActiveRecord::Base
has_many :departments
has_many :teachers, :through => :departments
...
end
然后您可以像这样查询教师:
@school = School.find(id)
@school.teachers.order(:created_at)
这应该足以让你有这个想法。