轨道中的动态输入表单

时间:2014-08-18 13:38:50

标签: ruby-on-rails dynamic input partial

我正在尝试从部分添加输入表单行。部分中的一些字段具有collection_select:

<td><%= label_tag :book_id, t("book") %></td>
<td><%= collection_select :books, "books[:id]", Book.all, :id, :name %></td>

问题是当我动态添加这种行时,只有最后一行传递给参数中的控制器。我没有将集合传递给partial,因为它是动态添加的。如果你能帮我解决这个问题,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

因为param名称正被克隆取代。 您可以添加一个计数器:

<% (1..10).each do |i| %>
  <td><%= collection_select :books, "books[#{i}][:id]", Book.all, :id, :name %></td>
<% end %>

当然,这只是一个简单的例子。最好通过JavaScript事件来控制这个计数器。