我想弄清楚,是否可以通过单选按钮发送多个参数。
第一个参数是time
,第二个provider_id
。我将每种方法都用于提供程序,并尝试选择只选择一次,而且只选择一个提供程序。
我的观点form_tag
:
<%= form_tag(provider_order_create_path) %>
<div class="btn-group" data-toggle="buttons">
<% @group.provider.each do |provider| %>
<label class="btn btn-default">
<%= radio_button_tag :order, time_for_order_00_00.to_datetime, 'false',
{:provider_id => provider.id} %><%= time_tag(time_00_00, :format => '%I:%M %p') %>
</label>
<% end %>
</div>
<%= submit_tag "Submit", type: 'submit', :name => nil %>
此时我只看到:日志中的订单参数:provider_id
"order"=>"2016-03-09T00:00:00+00:00"
我尝试使用hidden_field
,但它没有按预期工作,它总是为列表中的最后一个提供者发送id
谢谢,任何帮助表示赞赏
答案 0 :(得分:0)
我能够在@Sravan的帮助下解决这个问题。
View will looks like:
<%= radio_button_tag :order, [time_for_order_00_00.to_datetime,provider.id],
'false', {:provider_id => provider.id} %><%= time_tag(time_00_00, :format => '%I:%M %p') %>
和
Controller will be:
@time_from = params[:order].split[0]
@provide_id = params[:order].split[1]
答案 1 :(得分:0)
从rado按钮标记发送数组,并使用控制器中的索引值进行提取。
<%= radio_button_tag :order, [time_for_order_00_00.to_datetime,provider.id], 'false', {:provider_id => provider.id} %><%= time_tag(time_00_00, :format => '%I:%M %p') %> , controller_action => params[:order[0]] ,params[:order[1]]
在控制器中,
def you_method
@time = params[:order].split[0]
@provider = params[:order].split[1]
end