我有一个表单可以根据Ryan Bates的嵌套表单教程(#196和#197)构建多个对象。我的表格如下:
<%=form_for @group_poll, :remote => true do |f|%>
<%=f.fields_for :questions do |builder| %>
<%=render "group_polls/question_fields", :f => builder%>
<%end%>
<p><%= link_to_add_group_question "#{t(:addquestion)}", f, :questions%></p>
<%end%>
部分看起来像:
<div class="row-fluid">
<div class="span3"><%=f.label "#{t(:question)}:"%></div>
<div class="span3"><%=f.text_field :admin_question, :required => true%></div>
<div class="span1"><%=f.submit "#{t(:send)}", :name => "send_#{f.object.id}", :class=>"btn-white"%></div>
<div class="span1"><%=f.submit "#{t(:save)}", :name => "save_#{f.object.id}", :class=>"btn-white"%></div>
</div>
我想在应用程序中访问页面时预先加载数据库中存在的一些问题,并且还有机会添加新问题。在我的控制器动作中
@group_poll.questions.build()
每次投票。它可以用于生成问题的字段,但它们是空的。我不知道如何使用DB中的数据预加载那些民意调查。我尝试传递question
对象@group_poll.questions.build(question)
,但我没有运气。我跟着这个SO question’s answer,但我迷路了。
我想要做什么?
答案 0 :(得分:0)
如果要在数据库中预加载现有问题,则不应使用build()
,因为它会构建并清空对象。
如果你取出build()
,它有用吗?
@group_poll.questions