我正在尝试制作一个有点复杂的嵌套形式。我所拥有的(简化)如下:
模型/product.rb
class Product < ActiveRecord::Base
attr_accessible :name
has_many :colors
end
模型/color.rb
class Color < ActiveRecord::Base
attr_accessible :quantity
belongs_to :product
end
意见/管理员/update_inventories.html.erb
<% @products.each do |p| %>
<%= p.name %>
<% p.colors.each do |c| %>
<%= c.name %>:
<%= form_for :color, :url => color_update_path(:id => v.id) do |f| %>
<%= f.number_field :quantity, :value => c.quantity, :min => 0 %>
<%= submit_tag "Update" %>
<% end %>
<% end %>
<% end %>
这样做的问题是它会创建大量的表格,您必须逐个更新一套西装。我想要的是这样的观点:
查看/管理员/update_inventories_revised.html.erb
<%= form_for :inventory, :url => custom_update_path do |f| %>
<% @products.each do |p| %>
<%= p.name %>
<% p.colors.each do |c| %>
<%= f.number_field :quantity, :value => c.quantity, :min => 0 %>
<% end %>
<% end %>
<% f.submit_tag "Update All" %>
<% end %>
但我似乎无法弄清楚控制器端的逻辑来匹配它。我需要在控制器端做什么才能使该视图(或具有相同效果的东西)起作用?