Ruby on rails Rails通过参数并提交

Ruby on rails Rails通过参数并提交,ruby-on-rails,Ruby On Rails,我有一个Rails 3.2.12应用程序,我想通过表单提交按钮传递一个参数 参数为:发票id。格式中的值为@invoice 我试过这个: <%= f.submit "Submit", :class => "btn btn-success", params: {:invoice_id => @invoice} %> 但是,结果是零 谢谢你的帮助 更新1HTML表单不是这样工作的。如果有数据要与表单的其余数据一起提交,但用户无法查看或编辑,请将其填充到隐藏字段中,如下所示:

我有一个Rails 3.2.12应用程序,我想通过表单提交按钮传递一个参数

参数为
:发票id
。格式中的值为
@invoice

我试过这个:

<%= f.submit "Submit", :class => "btn btn-success", params: {:invoice_id => @invoice} %>
但是,结果是零

谢谢你的帮助


更新1

HTML表单不是这样工作的。如果有数据要与表单的其余数据一起提交,但用户无法查看或编辑,请将其填充到隐藏字段中,如下所示:

<%= form_for @order do |f| %>
  <%= f.text_field :customer_name %>
  <%= f.hidden_field :invoice_id, value: @invoice.id %>
<% end %>


执行此操作时,
invoice\u id
将与表单的其余数据一起提交,因此在本例中,您将以
params[:order][:invoice\u id]
的形式访问它,而HTML表单不是这样工作的。如果有数据要与表单的其余数据一起提交,但用户无法查看或编辑,请将其填充到隐藏字段中,如下所示:

<%= form_for @order do |f| %>
  <%= f.text_field :customer_name %>
  <%= f.hidden_field :invoice_id, value: @invoice.id %>
<% end %>


执行此操作时,
invoice\u id
将与表单的其余数据一起提交,因此在这种情况下,您可以通过
params[:order][:invoice\u id]

访问它,为什么希望它作为提交按钮的一部分,而不是隐藏的表单字段?为什么希望它作为提交按钮的一部分,而不是作为提交按钮的一部分,隐藏的表单字段?