这是我在这里的第一个问题,经过数月的潜伏和吸收。所以我希望我能正确地做到这一点。
在从这个 Railscast了解 pg_search_scope 功能后,我一直试图让 pg_search 的多搜索功能在我的 Rails 3.2.3 应用程序中工作。我相信 pg_search 文档假定读者比我有更好的 Rails 工作知识。我只是无法从我找到的资源跳转到使用多搜索获取工作应用程序。任何帮助将非常感激。这是我的设置:
配置/初始化程序/pg_search.rb
PgSearch.multisearch_options = {
:using => {
:tsearch => {
:dictionary => "english"
},
:trigram => {}
},
:ignoring => :accents
}
在视图中搜索表单
<%= form_tag articles_path, method: :get do %>
<%= text_field_tag :query, params[:query], :class => "search-box" %>
<%= submit_tag "Search This Site", name: nil, :class => "btn btn-search" %>
<% end %>
文章.rb
include PgSearch
multisearchable :against => [:title, :content]
def self.search(query)
if query.present?
search(query)
else
scoped
end
end
文章控制器.rb
def index
@articles = PgSearch.multisearch(params[:query])
respond_to do |format|
format.html # index.html.erb
format.json { render json: @articles }
end
end
搜索已知术语时,我没有得到任何搜索结果。我究竟做错了什么?