繁体   English   中英

Rails 3中的多态关联

[英]Polymorphic association in Rails 3

我已经在Google搜索并搜索了论坛,但似乎找不到适合我的情况的答案。

假设有以下模型:

class TextProblem < ActiveRecord::Base
   belongs_to :askable, :polymorphic => true
   ...
end

class MultipleChoice < ActiveRecord::Base
   belongs_to :askable, :polymorphic => true
   ...
end

class WordMatch < ActiveRecord::Base
  belongs_to :askable, :polymorphic => true
  ...
end

现在,我有另一个模型称为问题。 它具有一个名为question_type_id的字段,该字段指示问题的类型,以及一个名为question_id的字段,该字段是其中一个可问问题的外键。.我想执行以下操作:

class Question < ActiveRecord::Base
    has_one :askable, :foreign_key => 'question_id' ....  
end

并给出正确的要求,但我不确定如何编写关联。 我是在看这种权利,还是应该尝试以其他方式实现这一目标?

任何帮助表示赞赏!

你应该反过来联系

class Question < ActiveRecord::Base
    belongs_to :askable, :polymorphic => true 
end

class TextProblem < ActiveRecord::Base
   has_many :questions, :as => :askable
   ...
end

class MultipleChoice < ActiveRecord::Base
   has_many :questions, :as => :askable
   ...
end

class WordMatch < ActiveRecord::Base
 has_many :questions, :as => :askable
  ...
end

参考这个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM