1
我有一个嵌套的表格,如选择辅助值Rails的:失败后,创建
<% f.fields_for :invoice_items do |builder| %>
<%= link_to_remove_fields "remove", builder %>
<%= builder.collection_select(:product_id, Product.all, :id, :name) %>
<%= builder.text_field :quantity, :size => 4,%>
<% end %>
当我提交表单,它不通过它呈现验证再次执行新的 操作。东西是选定的值:product_id不是 记住,但:数量是好的。我读,我应该设置与选择的 选项的值时,控制器的 实例变量,然后做一些事情,如:
<%= builder.collection_select(:product_id, Product.all, :id, :name,
:selected => @selected_product) %>
但事情是应用程序可以有很多:invoice_items,所以我 唐不知道如何选择字段“记住”这些值。
谢谢。
你看过这个例子(不完全一样,但..):http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-collection_select。另外,你可以发表评论与生成的HTML(只有选择)。我敢打赌,你对collection_select的使用是错误的。通过验证时,它是否将所选产品的记录保存在数据库中? – 2010-12-07 10:27:17
嗨,你可以显示你的控制器代码,请问?如果你的页面有@invoice的许多表单(或者任何其他具有嵌套字段的对象),你如何处理请求? – Bohdan 2010-12-07 10:40:20