2011-12-29 53 views
8

我正在使用solr通過太陽黑子在我的rails應用程序中,我需要返回超過30個默認設置的記錄。我可以按 Sunspot solr告訴我,但我不想分頁數據。我想在單個頁面中顯示所有數據,而不考慮行。另外提供硬編碼值並不是我正在尋找的可能解決方案。太陽黑子搜索,如何一次返回所有記錄?

回答

11

Solr總是分頁,所以看起來像無法通過太陽黑子禁用分頁(https://groups.google.com/forum/#!topic/ruby-sunspot/kVKfsrDpokc)。我能做的唯一事情就是在搜索前獲取模型的記錄數,然後將per_page變量設置爲該數字,以保證只返回一個頁面。這樣的事情:

count = Service.count 
@search = Service.search do 
    keywords(params[:search]) 
    paginate :page => 1, :per_page => count 
end 
+0

yaa ..我曾想過一樣,並保留最後的選擇,但必須執行,因爲無法得到任何其他soln。 – Bijendra 2011-12-30 06:45:00

+2

要小心。然而'per_page:10 ** 10'給出了一個錯誤(超過了最大值,我猜),所以可以使用靜態的'per_page:10 ** 9'來代替'Service.count' – okliv 2014-03-04 00:11:56