0

我不明白为什么会这样。这是我的表格:

<%= form_tag controller: :static_pages, action: :index, method: :get do %>
  <%= text_field_tag :search_text %>
  <%= submit_tag "Search", id: :search_button %>
<% end %>

但是,它不是search_text通过 URL 发送 valeu ,而是调用 post 方法并method=get在 URL 中发送。

http://localhost:3000/static_pages/index?method=get

知道原因吗?

4

1 回答 1

1

它将 解释method: :get为表单应该去的路径的一部分,而不是作为form_tag自身的附加选项。包装controller: :static_pages, action: :index在哈希中并在方法调用中添加括号。然后它应该工作:

<%= form_tag( {controller: :static_pages, action: :index}, method: :get ) do %>
于 2012-07-06T19:59:25.010 回答