我正在关注嵌套模型Railscast的修订版:http://railscasts.com/episodes/196-nested-model-form-revised
我有一个类似的形式,railscast使用模型调查,问题,答案;但我有会员,孩子和照顾者。
我的代码与railscast几乎完全相同。我正在使用Rails 3.1.3和Ruby 1.9.2。
我的问题是,子元素属性没有反映在表单上。根据这个:http://archives.ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-nested-attributes没有必要在控制器上做任何事情......
这个解决方案的优点在于它可以让您的控制器脱离 混合并使提交的标准完美无缺 控制器级别的干扰。
如果我不这样做@member.children << Child.new
,则不会出现表单的嵌套子元素。
def new
@member = Member.new
@member.children << Child.new
respond_to do |format|
format.html
end
end
我错过了什么吗?
答案 0 :(得分:1)
您仍然需要为模型创建子记录才能让表单看到它 我会更改你的控制器使用构建而不是添加到数组
def new
@member = Memeber.new
@member.children.build
end