我已经被这个问题困扰了几天了。
我在 Railscasts Episode #198 上取得了一些成功,但那是针对 Rails 2 的。Rails 3 中进行了一些更改,因此在 Episode #198 中提供的代码将不起作用。
问题在于edit_individual.html.erb:
原始代码(由 Ryan @ Railscasts 提供):
<% form_tag update_individual_products_path, :method => :put do %>
<% for product in @products %>
<% fields_for "products[]", product do |f| %>
<h2><%=h product.name %></h2>
<%= render "fields", :f => f %>
<% end %>
<% end %>
<p><%= submit_tag "Submit" %></p>
<% end %>
修改后的代码(只需将 fields_for 更改为 form_for):
<% form_tag update_individual_products_path, :method => :put do %>
<% for product in @products %>
<% form_for "products[]", product do |f| %>
<h2><%=h product.name %></h2>
<%= render "fields", :f => f %>
<% end %>
<% end %>
<p><%= submit_tag "Submit" %></p>
<% end %>
在新代码中,每条记录都放置在自己的表单中,全部放在一个表单中(这是我只想要的)。
我的问题是,我怎样才能让 Railscasts Episode #198 提供的代码在 Rails 3 中工作?
这是我提到的 Railscast 的链接: http ://railscasts.com/episodes/198-edit-multiple-individually
谢谢你,c.allen.rosario