我有一个特殊的关系,如下
班级学校有_多个系,所属系_学校
班级部门有_多名教师,教师属于_部门
我希望能够列出属于一所学校的所有教师,根据他们被雇佣的时间(在这种情况下,只是"created_at"),而不是按部门组织。我希望ruby on rails有一个非常酷的查找函数:D,但如果没有,我该如何检索这个列表?也许下面类似的东西可以用来构建一个数组——如果是这样,你将如何通过Teach created_at值来组织它?
School.departments.each.teachers.each do |t|
teacher_list << t
end
您可以将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)
这应该足以给你一个想法。