如何关联这些数据?

时间:2013-07-29 07:57:47

标签: ruby-on-rails ruby-on-rails-3.2

在我的应用中,subject has_many goals且每个goal属于subject

这种关系最有意义,但我想知道如何在实践中使用它。例如 - 在给定的时间范围之后,应评估每个主题的目标,但是它们将在逐个学生的基础上进行评估。

所以让我们说

  • goal.1 =“喝一整加仑的牛奶而不呕吐”
  • student.1 =“Lisa”

而且我们也说Lisa非常擅长控制胆汁 - 所以为goal.1,Student.1 = 5 。目标与主题相关联,因此我知道目标1属于英语,数学等,但是当评估学生时,goalsstudents的关系建模的最佳方式是什么?它们也应该能够在给定的时间内进行多次评估。

1 个答案:

答案 0 :(得分:1)

我认为以下内容涵盖了您的描述:

Subject
  has_many :goals
end

Goal
  belongs_to :subject
  has_many :evaluations
end

Student 
  has_many :evaluations
end

Evaluation 
  belongs_to :goal 
  belongs_to :student

  # columns: score, date
end

评估对象允许学生在一段时间内对许多目标进行多次评估。