Ruby on rails 无法将form_标记方法设置为get

Ruby on rails 无法将form_标记方法设置为get,ruby-on-rails,slim-lang,Ruby On Rails,Slim Lang,我尝试发送一个带有get方法的form_标记,如下所示 = form_tag search_offers_path, method: :get, class: 'sort-form form inputs-underline' do .sort-inputs .input-group.inputs-underline.min-width-150px.sort-input = label_tag :so

我尝试发送一个带有get方法的form_标记,如下所示

= form_tag search_offers_path, method: :get, class: 'sort-form form inputs-underline' do
              .sort-inputs
                .input-group.inputs-underline.min-width-150px.sort-input
                  = label_tag :sort_by, 'Sort by'
                  = select_tag :sort_by, options_for_select([["Sort by", ""], ["User level", "user_level"], ["Success rating", "user_average_overall_rating"]]), class: "form-control"
                .input-group.inputs-underline.min-width-150px.sort-input
                  = label_tag :sort_direction, 'Sort direction'
                  = select_tag :sort_direction, options_for_select([["Sort direction", ""], ["Ascending", "asc"], ["Descending", "desc"]]), class: "form-control"
但我不明白为什么它会变成一个POST作为表单标签默认值

Started POST "/offers/search" for 127.0.0.1 at 2018-01-04 12:35:18 +0700

ActionController::RoutingError (No route matches [POST] "/offers/search"):
有人有提示吗

更新:我检查了根据反馈生成的HTML,并看到data remote=true(尽管我从未设置过,也不需要ajax请求)。

:get,class:'sort form inputs underline'})do%>

试试这个。你肯定能得到你的解决方案。

你能分享你的
路线吗。rb
代码?你是通过ajax提交此表单的吗?请检查并分享此代码生成的html可能与rails路线的@Gabbar:重复。我认为这是可以的,因为我提交另一个带有按钮的表单(方法get)到相同的搜索路径,它是一个get。search_offers GET(/:locale)/offers/search(:format)offers 35; search{:locale=>/en | vi/}。这是从铁路线路。
<%= form_tag({}, {:method => :get, class: 'sort-form form inputs-underline'}) do %>