Ottengo un elenco di oggetti dalla mia app Rails, e uso will_paginate alla pagina come al solito, e quindi ho un piccolo metodo utilizzato per salvare i dettagli della ricerca nel database:Ottenere il conteggio totale dei risultati dalla query Rails utilizzando will_paginate
per_page=10
session[:search_params] = params[:search_people]
@documents = Person.search_people(params[:search_people], params[:page], per_page)
Search.create(:user_id => (!current_user ? 0 : current_user.id),
:search_type => "Person",
:firstname => params[:search_people][:first_name],
:lastname => params[:search_people][:last_name],
:results => @documents.count)
Il problema è che il numero di risultati di ricerca (@ douments.count) è sempre < = per_page utilizzato per will_paginate.
Capisco perché questo è, ma c'è un modo per aggirarlo senza eseguire la query due volte, una volta con will_paginate e una volta senza?
Brillante, grazie. Accetta in 9 minuti, quando SO consente –
Nessun problema .. :) –
Sfortunatamente ciò significa una seconda query SQL, un modo per farlo senza quello? – bcackerman