Ruby on rails 如何更改我的参数格式?
以下是我的Ruby代码:Ruby on rails 如何更改我的参数格式?,ruby-on-rails,ruby,Ruby On Rails,Ruby,以下是我的Ruby代码: <%form_tag orders_path, :method => 'get' do%> From <%= date_select ("from", "", :start_year => 2010, :order => [:day, :month, :year])%> To
<%form_tag orders_path, :method => 'get' do%>
From
<%= date_select ("from", "", :start_year => 2010, :order => [:day, :month, :year])%>
To
<%= date_select ("to", "", :start_year => 2010, :order => [:day, :month, :year])%>
<%= submit_tag "Search", :name => nil%>
<%end%>
我该怎么办?这根本不是Rails特有的,因为HTML表单传递参数的格式是一个已定义的标准<代码>(?输入\名称=输入\值&下一个\输入\名称=下一个\输入\值)。由于您希望对日/月/年进行单独的选择,因此在提交表单之前,恐怕只有使用JS了 Nils Riedemann是正确的,这不一定是rails的问题,而是HTML表单的问题 您可以使用隐藏的表单字段来执行所需操作。创建两个隐藏文本字段(一个用于“发件人”,一个用于“收件人”)。编写一个Javascript函数,获取月/日/年选择字段的值,从其值中构建一个类似“25/01/2010”的字符串,并将该字符串存储为隐藏字段的内容。将Javascript函数连接起来,以便在每次更改日期选择字段时运行。现在,如果表单的“提交”操作只提交两个隐藏字段,那么您可以得到您想要的外观更好的URL 或者,您可以使用如下URL:
http://localhost:3000/orders/25-01-2010/25-04-2010
通过利用rails的功能。具体请参见“漂亮的URL”部分
http://localhost:3000/orders/25-01-2010/25-04-2010