我有以下搜索表单:
<%= bootstrap_form_for :search, url: admin_panel_users_path, method: 'get' do |f| %>
<div class="row" style="margin-top: 15px; line-height: 25px;">
<div class="col-md-2 text-center" style="margin-top: 6px; font-weight: bold">
<%= f.label :keyword%>
</div>
<div class="col-md-8">
<%= f.text_field :keyword, hide_label: true %>
</div>
<div class="col-md-2">
<%= f.submit 'Search User', hide_attribute_name: true, class: 'btn btn-success' %>
</div>
</div>
<% end %>
然而,当我提交时,我在网址中收到了许多我不需要的参数,然后网址看起来像这样:
?utf8=✓&search%5Bkeyword%5D=&commit=Search+User
虽然我只想让网址像这样:
?keyword=mysearch
有没有办法用bootstrap gem
做到这一点?另外,删除它所放置的隐藏的UTF字段
答案 0 :(得分:1)
将表单传递给enforce_utf8
为false。它最初是在Rails 3中添加的,用于解决使用GET
请求提交的表单的IE兼容性问题。它被称为_snowman param。
:enforce_utf8 - 如果设置为false,则名为utf8的隐藏输入不是 输出
要删除提交参数,请使用submit_tag
name:nil
<%= f.submit 'Search User', name: nil, hide_attribute_name: true, class: 'btn btn-success' %>