为什么我得到“未定义的方法`assert_valid_keys`”?

时间:2012-02-29 22:36:47

标签: ruby-on-rails

我知道为什么会收到此错误:

Exception encountered: #<NoMethodError: undefined method `assert_valid_keys' for :widget:Symbol>

当我尝试在以下模型上执行Factory.build(:widget)时:

class Widget < ActiveRecord::Base
  belongs_to :designer, :vendor
  # ...
end

当我删除belongs_to行时,错误就会消失。

1 个答案:

答案 0 :(得分:41)

 belongs_to :designer, :vendor

不起作用。 :vendor被视为一种选择。当然,没有这样的选择。有关详细信息,请参阅docs

如果您需要两个belongs_to关系,只需将代码更改为:

 belongs_to :designer
 belongs_to :vendor