Mongoid多个has_one关系

时间:2013-03-14 10:34:52

标签: ruby-on-rails ruby mongoid has-one

我努力让这些关系奏效。 我有以下类FlowContainer

class FlowContainer
  include Mongoid::Document
  has_one :production_flow, class_name: Flow
  has_one :test_flow, class_name: Flow
  has_one :design_flow, class_name: Flow
end

如您所见,我希望它有3个特定流程。我在Flow中建立了这样的关系:

class Flow
  include Mongoid::Document
  belongs_to :flow_container
end

我认为这不是特别的东西,应该在我看来有效但是当我尝试将流程分配给上面提到的某个特定流程时,我收到此错误消息:

  

NoMethodError:          Flow的未定义方法`sub':Class

我也可以选择通用流程和3个子类的继承设置,但目前我并不赞成这个解决方案,因为我认为这应该有效。 如果有人可以就此事发表意见,我将不胜感激。

1 个答案:

答案 0 :(得分:3)

class_name必须作为string传递,请尝试:

has_one :test_flow, class_name: "Flow"