嵌套的子修改

时间:2012-02-16 03:02:18

标签: ruby-on-rails

我正在使用这个动态表单来创建多个嵌套子表单,就像在ryan bates railscast中一样,但是我想在输入之前指定嵌套子表单的数量:

这是ryan的railscast中的控制器:

  

def new

   @invoice = Invoice.new

5.times { @invoice.items.build } 
     

所以我想知道我是否可以根据输入形式将嵌套子项更改为动态乘法:

我在下面尝试过这段代码,但它不起作用:

  

def new

   count = params[:item_counts] ---> the value from a text_field_tag

   count.times { @invoice.items.build } 
     

以下是观点:

<div id="invoice">
     <%= form_tag invoices_path, :method => "get" do %>
          <%= label_tag :items, "Item amounts :" %><%= text_field_tag :item_counts %><br /><br />
          <%= link_to 'Create New Invoice', new_invoice_path(invoice) %>
     <% end %>
</div>

如何将text_field_tag中的:item_counts值传递给控制器​​?

1 个答案:

答案 0 :(得分:0)

将值传递给控制器​​是什么意思?如果您提交表单,您的所有参数(包括params[:item_counts])都将传递给invoices#create,即创建发票控制器的操作。 params传递给发布的new方法究竟是什么?