Pg_Search 不返回结果

Gar*_*nes 2 full-text-search ruby-on-rails pg-search

在我的应用程序中,我有许多模型想要添加多搜索功能,我觉得我已经完成了所需的一切,但是在控制台中,当我运行以下命令时,我得到一个空的 []。

PgSearch.multisearch("Red")
Run Code Online (Sandbox Code Playgroud)

所以这就是我所做的

rails g pg_search:migration:multisearch
rake db:migrate
Run Code Online (Sandbox Code Playgroud)

创建了一个初始化程序,其中包括

PgSearch.multisearch_options = {
:using => [:tsearch, :trigram],
:ignoring => :accents
}
Run Code Online (Sandbox Code Playgroud)

我还创建了这些扩展

在我想搜索的每个模型中,我添加了以下内容

include PgSearch
multisearchable :against => [:name]
Run Code Online (Sandbox Code Playgroud)

然后我创建了一个结果控制器,这里有什么

class ResultsController < ApplicationController

 def index
  @pg_search_documents = PgSearch.multisearch(params[:query])
 end
end
Run Code Online (Sandbox Code Playgroud)

从控制台运行搜索时,我没有收到任何错误,即使我知道有适合我正在搜索的项目,也没有结果。

pg_search 是否遍历添加 pg_search 之前创建的项目?有没有人对我做错了什么有任何线索?我可能错过了什么。

谢谢

编辑:对不起,我还应该提到我正在使用 rails 3.2.8 和 ruby​​ 1.9.2,我已经将 pg_search 添加到我的 gemfile 并运行 rake db:migrate

Gar*_*nes 6

啊,很明显,我已经为 pg-search 重建了我的记录来访问它们。希望这对未来的人有所帮助。

rake pg_search:multisearch:rebuild[BlogPost]
Run Code Online (Sandbox Code Playgroud)

  • 我是 pg_search 的作者和维护者。感谢您发布此内容,因为它提醒我应该将其添加到文档中。 (2认同)