我正在尝试在rails中建立一个关注跟踪系统。我需要一些帮助来设计表格以及它们之间应该存在哪些关联。
我将有学校,然后将课程和教师分配到每个班级。每个班级将有50名学生。
所以我认为我应该有一个学生表,然后是课程,然后是老师和一个人。
我不知道我应该如何设计关注表和其他表格。请有人帮忙。
答案 0 :(得分:0)
<强>模型强>
#app/models/school.rb
Class School < ActiveRecord::Base
has_many :classes, class: "Class"
has_many :teachers, through: :classes
end
#app/models/class.rb
Class Class < ActiveRecord::Base
belongs_to :school
has_many :teachers, class: "Teacher"
end
#app/models/teacher.rb
Class Teacher < ActiveRecord::Base
belongs_to :class
end
#app/models/student.rb
Class Student < ActiveRecord::Base
belongs_to :class
end
<强>架构强>
schools
id | name | created_at | updated_at
classes
id | school_id | name | created_at | updated_at
teachers
id | class_id | name | created_at | updated_at
students
id | class_id | name | created_at | updated_at
这将允许您致电:
@school.classes
@school.teachers
@class.school
@class.teachers
@teacher.class
@student.class