ruby-on-rails - 如何在使用 Thinking_sphinx 和 rails 进行搜索时显示更多记录

标签 ruby-on-rails ruby rubygems sphinx thinking-sphinx

我已经用 thinking_sphinx gem 更新了我的搜索字段记录并且我已经配置了它。它工作正常但有问题,它只显示默认的 20 条记录。如何更改这些内容以使更多记录在 View 中可见..

最佳答案

中微子几乎是正确的...

首先,值得注意的是 Sphinx(以及 Thinking Sphinx)总是对请求进行分页,默认页面大小为 20。如果您想更改它,可以传入 :per_page => 30 或类似的方法来获取您想要的每页记录数。

Model.search 'foo', :per_page => 42

其次,Sphinx(默认情况下)将可用搜索结果的总数默认限制为 1000。这就是 Neutrino 所指出的——如果您设置 max_matches,您可以增加该值。但是,您需要在搜索调用中为 :max_matches 指定一个值。

Model.search 'foo', :max_matches => 10_000

当您更改 config/sphinx.yml 文件中的值时,您将需要停止/重新索引/重新启动 - 有一个 rake 任务可以执行此操作:

rake ts:rebuild

这将确保生成的配置文件是最新的,并且 Sphinx 守护进程知道更改。

关于ruby-on-rails - 如何在使用 Thinking_sphinx 和 rails 进行搜索时显示更多记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3092672/

相关文章:

ruby-on-rails - Rails 如何使用 where 对多列进行排序?

ruby-on-rails - Rails : json 1. 7.5 bundle 安装问题

ruby - 如何在构建 ruby​​ gem 之前运行单元测试?

ruby - 更新 Rubygems?

ruby-on-rails - 如何创建命名空间模型?

ruby-on-rails - Has_many 通过关联依赖 : destroy not destroying

ruby-on-rails - 在 Rails 3 中使用 Bootstrap 为 simple_form_for 设置样式文件上传按钮

ruby-on-rails - Ruby - 从不同的服务器复制图像

ruby - Watir 无法找到 Mozilla geckodriver

ruby - 如何编写特定的 rspec 测试?需要建议...