1
我使用太阳黑子和Kaminari进行分页。但是,我看到的最大结果返回(即使有更多的)是30Rails太阳黑子Kaminari最大结果30
这里是我的代码:
Kaminari.paginate_array(search.results).page(params[:page]).per(10)
请有关如何返回所有结果,并相应分页建议。
我使用太阳黑子和Kaminari进行分页。但是,我看到的最大结果返回(即使有更多的)是30Rails太阳黑子Kaminari最大结果30
这里是我的代码:
Kaminari.paginate_array(search.results).page(params[:page]).per(10)
请有关如何返回所有结果,并相应分页建议。
All results from Solr are paginated... By default, Sunspot requests the first 30 results from Solr。在您的示例中,您将对Solr返回的前30个结果的数组进行分页。
我觉得最简单的只是调用在我的控制器搜索块paginate
...
@search = Sunspot.search(BlogPost) do
# filters...
paginate(page: params[:page], per_page: 10)
end
然后用雷的PAGINATE帮手在我的意见......
<%= paginate @search.results %>
*你可以如果您不想加载模型实例,请使用@search.hits
或者,您可以将:total_count
作为Kaminari的paginate_array
方法的关键字参数传递给looks like。所以这应该工作,如果你想坚持使用上面的方法...
Kaminari.paginate_array(search.results, total_count: search.total).page(params[:page]).per(10)
嘿,你的回答是正确的。谢谢。事实证明,我在搜索块之外呼叫分页: – Brian