Solr(太阳黑子),最大结果超过30?

时间:2011-01-26 23:34:00

标签: ruby-on-rails solr

我正在使用Solr via Sunspot for rails,但我无法弄清楚如何返回30多个结果?

说我有这个搜索块:

posts = Post.search do
  keywords('something')
end

我如何确定太阳黑子应该返回所有的比赛,而不仅仅是30?

3 个答案:

答案 0 :(得分:15)

您可以使用paginate

posts = Post.search do
  keywords 'something'
  paginate :page => 1, :per_page => 100
end

要更改默认结果数,请将以下内容添加到application.rb或其自己的初始化文件中。

Sunspot.config.pagination.default_per_page = 30

Source

答案 1 :(得分:5)

为了澄清,Solr 始终分页结果 - 30是任意默认值,但始终有页长。如果你想要所有的结果,你可以设置一个非常高的页面长度,或者在你的代码中翻阅结果来组成一个包含所有结果的数组(后者可能更好)。

答案 2 :(得分:1)

您还可以按照此处所述修改您的solr配置:http://solr.pl/en/2011/01/10/optimization-query-result-window-size/