1

我为 Etho 创建了一个脚手架,我试图让用户获得 1 个单一的“ethos”进行编辑。Ethos 正在工作,但在 User 模型上它只与 has_many 一起工作:ethos

用户应该只得到 1,所以我可以创建更好的关联。但是现在当我改变模型时,它会产生我无法追踪的蜘蛛效应。

用户型号:

class User < ActiveRecord::Base
  has_many :jobs
  has_one  :ethos #used to be has_many :ethos

现在在所有页面上,我在 EthosController#edit 上得到未初始化的常量 User::Ethos

请帮忙,我该如何解决这个问题?

4

2 回答 2

0

你有没有尝试过?

class User < ActiveRecord::Base
  has_many :jobs
  has_one  :etho 

has_one应该是单数:http: //guides.rubyonrails.org/association_basics.html#the-has_one-association

于 2012-07-09T19:38:22.337 回答
0

您可以通过明确指定关联来继续使用ethos复数名称:class_namehas_one

class User < ActiveRecord::Base
  has_many :jobs
  has_one  :ethos, class_name: 'Ethos' 

此答案提供了更多详细信息:https ://stackoverflow.com/a/6604247/37966

于 2015-08-28T17:24:33.370 回答