我有:
<% @hotelUser= HotelUser.find(cookies[:user_id2])%>
<%= form_for(:hotelUser,:url=>{:controller=>'orders',:action=>'show'}) do |hotelUser|%>
<%= @hotelUser.address1%>
<%= hotelUser.radio_button :address1,:value=>@hotelUser.address1 ,:checked=>true%> SELECT ADDRESS
<%= @hotelUser.address2%>
<%= hotelUser.radio_button :address1,:value=>@hotelUser.address2 ,:checked=>true%> SELECT ADDRESS
<%= hotelUser.submit("PROCEED TO PAYMENT",{:action=>'show'})%>
<%end%>
我的页面中有两个带有相同名称的单选按钮。问题是我没有在params[:address1]
页面中获得value
orders/show
。我需要这个值来进一步处理我的应用程序。
答案 0 :(得分:0)
查看随请求发送的服务器参数,它将嵌套在params [:hotelUser] [:address1]中。更多的事情我不确定,但我认为它将返回第一个数组的两个值单选按钮和第二个,因为你有两个同名的。
最好的办法是检查已发送的参数,然后您将了解如何获取单选按钮的值。
答案 1 :(得分:0)
使用radio_button_tag而不是radio_button:
<% @hotelUser= HotelUser.find(cookies[:user_id2])%>
<%= form_for(:hotelUser,:url=>{:controller=>'orders',:action=>'show'}) do |hotelUser|%>
`&lt;%= @ hotelUser.address1%&gt;
<%= radio_button_tag :address1,@hotelUser.address1 %> SELECT ADDRESS
<%= @hotelUser.address2%>
<%= radio_button_tag :address1,@hotelUser.address2 %> SEL
ECT ADDRESS
<%= hotelUser.submit("PROCEED TO PAYMENT",{:action=>'show'})%>
<%end%>