2009-10-09 51 views
0

就像在计算器上,在我的应用程序,用户可以写的问题,也可以提供答案:单个模型可以“属于”多个父模型吗?

class User < ActiveRecord::Base 
    has_many :questions 
    has_many :answers 
end 

class Question < ActiveRecord::Base 
    has_many :answers 
    belongs_to :user 
end 


class Answer < ActiveRecord::Base 
    belongs_to :question 
    belongs_to :user 
end 

我的问题的答案模型上面做:

它是确定一个Answerbelong_to用户和问题模型?

我有一种感觉,我在某处读到一个模型只能有一个外键。如果是这样,我该如何纠正?

回答

3

是的,它是完全可以的,当你的领域模型变得越来越复杂时,你将会拥有许多拥有许多belongs_to的模型。我不知道你会在哪里看到模型只能有一个外键。

+0

许多人认为,因为一个类只能有1 **父**,所以模型只能有1个belongs_to。一种误解,但实际上很普遍。 – colinross 2011-05-26 09:30:31

相关问题