我有以下rails索引页
搜索/ index.haml
= form_tag search_path, method: 'get' do
= text_field_tag :q, params[:q], placeholder: 'Search...'
= submit_tag 'search'
= link_to 'testing', search_path(params.except(:controller, :action).merge(p: 'testing'))
输入价值"产品"并提交表单给我这个查询字符串
http://localhost:3000/search?utf8=✓&q=product
提交表单后点击链接给我
http://localhost:3000/search?p=testing&q=product&utf8=✓
有没有办法可以添加另一个表单并将其提交给现有的查询字符串,就像链接的行为方式一样?
我们的想法是使用第二种形式作为搜索聚合/方面的一部分。
答案 0 :(得分:0)
只需创建网址的方式与创建链接的网址相同:
form_tag search_path(params.except...)
...并将您的字段名称从q
更改为q[]
,以便Rails了解您正在发送一系列值。
然后,在服务器端,您需要将这些内容与以下内容联系起来:query = params[:q].join " "