En mi aplicación Rails, quiero usar la gema will_paginate
para paginar en mi consulta SQL. ¿Es eso posible? He intentado hacer algo como esto, pero no funcionó:¿Es posible combinar will_paginate con find_by_sql?
@users = User.find_by_sql("
SELECT u.id, u.first_name, u.last_name,
CASE
WHEN r.user_accepted =1 AND (r.friend_accepted =0 || r.friend_accepted IS NULL)
.........").paginate(
:page => @page, :per_page => @per_page,
:conditions => conditions_hash,
:order => 'first_name ASC')
Si no es así, se puede recomendar una forma de evitar esto? No quiero tener que escribir mi propia paginación.
En su solución, se aplica la paginación en el conjunto de resultados devuelto por el 'find_by_sql' . Por lo tanto, es posible que tenga que tratar con un gran conjunto de resultados y, por lo tanto, el sistema tiene que realizar cálculos redundantes. –
Gracias por la entrada. –