2013-03-31 141 views
1

我有一個student,可以有很多comment的左關於他們:Ruby on Rails的雙協會

class Student < ActiveRecord::Base 
    has_many :comments 
end 

class Comment < ActiveRecord::Base 
    belongs_to :student 
end 

的評論,但必須屬於學生誰是有關,但也屬於發表評論的學生。也就是說,評論需要同時屬於兩個不同的學生。

這是如何實現的?

回答

5

在評論表中,您應該有commenter_idstudent_id,因此評論可以屬於評論者和學生。

class Comment < ActiveRecord::Base 
    belongs_to :student 
    belongs_to :commenter, class_name: 'Student' 
end 
+1

可能還想在這些列上添加索引,但取決於用例。 – bdares