1

我对关联有疑问。作为 RoR 的新手,我从 RoR网站上的指南中了解了关联。我几乎完全按照其中一个示例进行操作,唯一改变的是类名。示例如下:

class Document < ActiveRecord::Base 
  has_many :sections  
  has_many :paragraphs, :through => :sections 
end 

class Section < ActiveRecord::Base 
  belongs_to :document
  has_many :paragraphs 
end 

class Paragraph < ActiveRecord::Base 
  belongs_to :section 
end 

在我的项目中,它的向导、页面和字段而不是文档、部分和段落。除了遵循这个示例之外,我还使用Typus作为管理界面。一切似乎都运行良好。我创建了一个向导。然后从向导部分创建了一个页面。一旦我尝试创建一个与页面关联的字段,它就会产生一个错误:

ActiveRecord::HasManyThroughCantAssociateThroughHasOneOrManyReflection in Admin/fieldsController#create

Cannot modify association 'Wizard#fields' because the source reflection class 'Field' is associated to 'Page' via :has_many.

. 不幸的是(这可能是我的搜索词)谷歌似乎没有找到任何对我有帮助的东西。有人对如何使它起作用有任何建议吗?如果我没有清楚地说明一切,请提前道歉。

4

1 回答 1

0

也许您试图从向导部分而不是从页面部分添加一个字段?那是行不通的,因为它必须知道将字段添加到哪个页面。

于 2009-12-16T22:48:42.327 回答