我在我的Rails应用程序中集成ElasticSearch,基于此tutorial
与教程演示应用程序不同,我没有在搜索视图上实现我的搜索表单,但我在共享布局中实现搜索表单:
app/views/shared/_header.html.erb
...
<%= form_for search_path, method: :get do |f| %>
<%= f.label "Search for" %>
<%= text_field_tag :q, params[:q] %>
<%= submit_tag "Go", name: nil %>
<% end %>
search_path的路径如下所示:
get 'search', to: 'search#search'
搜索#search动作如下所示:
app/controllers/search_controller.rb
class SearchController < ApplicationController
def search
if params[:q].nil?
@publications = []
else
@publications = Publication.search params[:q]
end
end
end
但是,当我在搜索表单中输入搜索字词并按下“开始”按钮时,按钮,我没有像我预期的那样去搜索页面(app / views / search / search.html.erb)。
我只是留在申请表的主页上。
有谁知道为什么“去”&#39;我的搜索表单按钮是不是将我发送到搜索视图模板?
感谢您的帮助,
安东尼