预加载表单数据

时间:2011-05-14 03:09:56

标签: jquery ruby-on-rails-3

我正在使用Ryan Bates在Railscasts Episode 197中说明的技术,以便当用户向表单添加更多项目时,表单可以“增长”。这一切都很有效,但我需要在提供初始项目作为URL的一部分时调用页面。

由于Ryan的技术让用户点击一个Add按钮来调用jQuery函数来向表单添加字段,我有点陷入困境,如何将信息从控制器传递给jQuery来调用 - 和prefill - 之一那些新领域。

我在想这个错吗?

2 个答案:

答案 0 :(得分:1)

是的,你在想错了; - )

以此表格为例:

<% form_for @survey do |f| %>  
  <%= f.error_messages %>  
  <p>  
    <%= f.label :name %><br />  
    <%= f.text_field :name %>  
  </p>  
  <% f.fields_for :questions do |builder| %>  
    <%= render 'question_fields', :f => builder %>  
  <% end %>  
  <p><%= link_to_add_fields "Add Question", f, :questions %>  
  <p><%= f.submit "Submit" %></p>  
<% end %>

fields_for是一个迭代器;所以你的控制器所要做的就是:

@survey.questions.build(:content => "Prepared question")

它将显示在页面上。

答案 1 :(得分:0)

在Rails视图中生成像往常一样的文本字段。