我尝试使用rails选择表单字段来填充搜索表单中的多个字段。但是返回的搜索字符串插入了错误的[]括号。
https://test-selects.c9users.io/cars?utf8=✓&安培; car_year%5Bcar_year%5D = 2016&安培;提交=搜索+汽车
正确的格式应该是:
https://test-selects.c9users.io/cars? UTF8 =✓&安培; car_year = 2016&安培;提交=搜索+汽车
<%= form_tag(cars_path, :method => "get", id:"search-form") do %>
<%= select(:car_year, :car_year, ["2017", "2016", "2015"]) %>
<%= submit_tag "Search Cars", class: "search-but" %>
<% end %>
&#13;
上面的代码是一个简化版本,只使用了几个样本年,但它产生的结果与我从我的模型中返回一个包含select字段数据的数组时的结果相同。
选择(:car_year,:car_year,...
我尝试过各种组合:car,params [car_year]等等,括号总是显示出来。
相同的代码在post方法中正常工作。当我提供格式正确的搜索URL时,搜索会提供预期的结果,当我使用text_field_tag时,我也可以获得预期的结果,因此我知道我的控制器和模型正常工作。
非常感谢这位新秀的帮助。
上面的代码显示已经过简化,但会产生相同的结果。