0
assignment (id, name, date)
activity (id, name, desc)
student (id, name, email)

課題には多くの活動を含めることができ、課題は多くの学生に割り当てることができます。生徒の各アクティビティのステータスを追跡する必要があります。

したがって、3 つの主キー テーブルがあります。

assignments_activities_students (assignment_id, activity_id, student_id, status)

以下の関連付けを設定しますが、機能しません。誰でもこれを行う方法を知っていますか?

assignment
  has_many :assignments_activities_students
  has_many :students, :through => :assignments_activities_students
  has_many :activities, :through => :assignments_activities_students

activity
  has_many :assignments_activities_students
  has_many :assignments, :through => :assignments_activities_students
  has_many :students, :through => :assignments_activities_students

student
  has_many :assignments_activities_students
  has_many :assignments, :through => :assignments_activities_students
  has_many :activities, :through => :assignments_activities_students

assignments_activities_students 
  belongs_to :assignment
  belongs_to :activity
  belongs_to :student
4

1 に答える 1

1

モデルがありますStudentが、関係を追加しています

has_many :users, :through => :assignments_activities_students

Assignmentおよびモデルで、これを次のように変更する必要がありActivityます。

has_many :students, :through => :assignments_activites_students
于 2012-08-11T07:13:11.407 に答える