从视图到控制器的自定义参数
Custom parameters from view to controller
我正在创建一个表单,用户可以在其中选择产品和数量。我需要将对象 @event
的 id
值传递给控制器,但我不知道正确的方法是什么。就像现在一样,控制器中的 params[:event_id]
字段始终为 nil。
<%= form_tag logic_giveRandomGifts_path :method => 'post' %>
<div class="form-group">
<%= collection_select(:params, :product_id, Product.all, :id, :name, :prompt => true) %>
Quantidate:
<%= text_field_tag :quantity, params[:quantity], :size => 2 %>
<%= submit_tag "GO!",params[:event_id] => @event.id,:class => 'btn btn-default' %>
</div>
<%= hidden_field_tag :event_id, @event.id %>
所以这将在参数[:event_id]中可用。
在表单中添加隐藏字段并将其值设置为 @event.id
<%= form_tag logic_giveRandomGifts_path :method => 'post' %>
<div class="form-group">
<%= collection_select(:params, :product_id, Product.all, :id, :name, :prompt => true) %>
Quantidate:
<%= text_field_tag :quantity, params[:quantity], :size => 2 %>
<%= hidden_field_tag :event_id, value: @event.id%> #add this
<%= submit_tag "GO!",params[:event_id] => @event.id,:class => 'btn btn-default' %>
</div>
<% end %>
您现在可以在控制器中使用事件 ID 作为 params[:event_id]
只需在表单中传递一个隐藏字段,如下所示
<%= hidden_field_tag :event_id, value: @event.id%>
它将在控制器中作为
提供
params[:event_id]
我正在创建一个表单,用户可以在其中选择产品和数量。我需要将对象 @event
的 id
值传递给控制器,但我不知道正确的方法是什么。就像现在一样,控制器中的 params[:event_id]
字段始终为 nil。
<%= form_tag logic_giveRandomGifts_path :method => 'post' %>
<div class="form-group">
<%= collection_select(:params, :product_id, Product.all, :id, :name, :prompt => true) %>
Quantidate:
<%= text_field_tag :quantity, params[:quantity], :size => 2 %>
<%= submit_tag "GO!",params[:event_id] => @event.id,:class => 'btn btn-default' %>
</div>
<%= hidden_field_tag :event_id, @event.id %>
所以这将在参数[:event_id]中可用。
在表单中添加隐藏字段并将其值设置为 @event.id
<%= form_tag logic_giveRandomGifts_path :method => 'post' %>
<div class="form-group">
<%= collection_select(:params, :product_id, Product.all, :id, :name, :prompt => true) %>
Quantidate:
<%= text_field_tag :quantity, params[:quantity], :size => 2 %>
<%= hidden_field_tag :event_id, value: @event.id%> #add this
<%= submit_tag "GO!",params[:event_id] => @event.id,:class => 'btn btn-default' %>
</div>
<% end %>
您现在可以在控制器中使用事件 ID 作为 params[:event_id]
只需在表单中传递一个隐藏字段,如下所示
<%= hidden_field_tag :event_id, value: @event.id%>
它将在控制器中作为
提供 params[:event_id]