0
我一直在使用solr
搜索,現在我通過will_paginate
寶石添加分頁。加載初始頁面與網頁底部的分頁鏈接正常工作並正常工作,但是當我通過Solr進行搜索時,分頁鏈接不會更新。它始終爲非搜索加載155個分頁鏈接,而最多爲2個分頁鏈接進行搜索。它們保留了初始頁面加載的舊鏈接。如何更新分頁鏈接,如果他們不刷新Solr搜索請求?
books.rb:
def self.search(query,page)
search = Sunspot.search(Book) do
keywords query
paginate :page => page, :per_page => 10
end
search.results
end
books_controller.rb:
def index
if params[:query] && !params[:query].blank?
@books = Book.search(params[:query],:page => params[:page])
else
@books = Book.order_by(:title).paginate(:page => params[:page], :per_page => 10)
end
end
index.html.erb:
<%= form_tag books_path, :method => :get, :remote => true, :id => "book_search" do %>
<div><%= label_tag :query, "Search" %> <%= text_field_tag "query", "" %></div>
<div><%= submit_tag "Find", :class => "" %></div>
<% end %>
<div><%= will_paginate @books %></div>
我已經安裝了will_paginate
和sunspot
寶石兩者。
感謝
我很確定我沒有運行'Book.order_by'這一行,因爲它會加載一個巨大的列表,而'Book.search'只會加載一些項目。它始終顯示相同的155分頁鏈接,而最多隻有2個分頁鏈接。感謝您使用'present?' – Goalie 2012-03-26 20:21:56
的提示,問題不在於分頁鏈接不工作,而在於您獲得的結果比預期的要多。在這種情況下,您可能必須經過「用戶」模型搜索設置,以便查看獲取索引的內容以及示例查詢。即使那樣,沒有你的數據集,也很難知道你爲什麼會得到超過預期的數據。 – cpjolicoeur 2012-03-26 20:23:55
這是我得到更多的結果,它的分頁鏈接搜索後不正確刷新。我將添加演示文稿代碼。謝謝 – Goalie 2012-03-26 21:37:32