嵌套表单字段出现问题
我正在尝试为我的网站实现嵌套对象表单,使用Ryan Daigle的博客文章作为指南( http://ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-嵌套属性 )。 由于某种原因,嵌套的表单字段不会出现在视图中。
class Instruction < ActiveRecord::Base has_many :steps accepts_nested_attributes_for :steps end class Step < ActiveRecord::Base belongs_to :instruction end
当我更改instruction_form.fields_for :steps do |step_form|
to instruction_form.fields_for :step do |step_form|
,表单呈现,但提交后,我得到一个’未知属性:步’错误。
我正在做的似乎与教程相符。 我应该检查什么? 谢谢。
你的控制器发生了什么? 我还没有看过这个教程,现在似乎无法将它拉出来(向下?)但是你是否在内存中构建了一个对象来填充?
在你的控制器中,在你的“新”动作中,确保你是
@instruction = Instruction.new @instruction.steps.build
这将在内存中实例化Step
作为表单填写的“占位符”。 。 。 至少这是我在使用accepts_nested_attributes_for
时在我自己的控制器中所做的事情,并且效果很好。
让我知道它是否有效,一旦我可以完成教程,我可能需要编辑它