2010-12-01 17 views
4

Ruby On Rails 3プロジェクトにSunspotを正常にインストールしましたが、検索クエリの総ヒット数を取得する方法が見つかっていないようです。Ruby on Rails on sunspot 1.2のヒット件数を取得する3

は、これは私ではなく、合計の結果が返された実際のヒットの合計数を取得する必要がありますを除いてうまく機能し、私の検索要求

@search = Sunspot.search(Job) do 
    fulltext params[:job] 
    paginate(:page => params[:offset], :per_page => 25) 
end 

である(この場合25での理由:PER_PAGE => 25)

言い換えれば、私は次のように表示したいと考えています:見つかった883のジョブのうちの1から25を表示

助けていただければ幸いです!

おかげ

答えて

11

ここで働くtotal方法。

query_results = Sunspot.search(Recipe) do 
    keywords(params[:qs]) 
    paginate(:page=>params[:page], :per_page=>30) 
end 

@search_results = query_result.results 
@search_total = @search_results.total 

または、total_entriesはresultsオブジェクトで機能します。

%div 
     Your search for 
     = params[:qs] 
     returned 
     = pluralize(@search_results.total_entries, 'result') 
+1

'total_entries'は私のためにコントローラーで働いていたようですが、' total'ではありませんでした。 –

+0

私は同意します。コントローラのtotal_entriesの仕事では、totalは – coorasse

3

は、太陽黒点を使用することはありませんが、あなたはあなたのビューでこれを試してみました:

Showing #{@search.hits.page} to #{@search.hits.per_page} out of #{@search.total} jobs found 
+0

@Farbour、これを有効にできましたか? – hade