在Rails中不带参数名称的表单提交

时间:2019-05-03 08:51:42

标签: html ruby-on-rails forms

我有一个带有输入和提交按钮的表格。 如果用户键入“ plane”并单击按钮,它将提交给 example.com/something?q=plane 。如何使其进入 example.com/something/plane

现在,我只用HTML编写它,但是我认为我需要一个Rails助手来做到这一点。 (必须是“获取”请求)

<form action="/something" method="get">
  <input type="text" name="q" placeholder="Help me">
  <button type="submit">Results</button>
</form>

2 个答案:

答案 0 :(得分:0)

在表单中使用post方法。

<form method="post"></form>

答案 1 :(得分:0)

  $(document).on("submit", "form[data-turboform]", function(e) {
    var query = $(this).serialize().substring($(this).serialize().indexOf('q=') + 2);
    Turbolinks.visit(this.action + '/' + query);
    return false;
  });

此jQuery代码将在表单提交时触发并生成链接,然后使用Turbolinks.visit转到路由。请记住,这仅适用于GET请求

<%= form_tag orders_path, method: :get, local: true, enforce_utf8: false, 'data-turboform': true do %>
  <%= text_field_tag :q, nil, class: 'form-control', placeholder: 'Help Me'  %>
  <%= submit_tag 'Submit'%>
<% end %>