Output legato a filtri e paginato con will_paginate

ciao a tutti.
sto sviluppando in rails 2.0.2 e ho l’esigenza di modificare l’output di
una query tramite un filtro che scelgo tramite una select.
quindi nella mia form ho in alto 1 select: ‘centro di costo’ con le cui
scelte creo la clausola where della query con cui instanzio un oggetto
activerecord che impagino con will_paginate.

per fare cio richiamo nell’evento onchange delle select una
remote_function come di seguito:
:onchange => remote_function(:url => {:action => :cambio_centro_costo},
:with => “‘id=’ + this.value”))

nella cui azione rimodulo la query sql per la rivalorizzazione
dell’oggetto activerecord col metodo paginate_by_sql e poi provo a
renderizzare la partial in cui giace la lista di output nel modo
seguente:

render :update do |page|
page.replace_html ‘lista-mezzi’,:partial => ‘lista_mezzi’
end

la cosa funziona… finchè non si ha la necessità di sfogliare la lista.
:slight_smile:
appena chiedo la 2 pagina il browser mi visualizza il codice java con
cui fa il try element.update dell’id ‘lista-mezzi’…

mi sono accorto che la url creata per il cambio pagina include anche il
nome dell’azione invocata con la remote_function (cambio_centro_costo)
quindi invece che una url corretta come:
http://localhost:3000/mezzi?page=2
in caso modifichi la lista originale e provi a sfogliarne l’output mi
scatena l’url errata:
http://localhost:3000/mezzi/cambio_centro_costo?page=2

non sono un esperto di rails e spero di essere stato chiaro
nell’illustrare il mio problema.
qualcuno puo darmi una dritta?
grazie
Andrea

Andrea De felice wrote:
rigirando nel forum ho beccato questa interessantissima discussione che
mi ha portato alla soluzione del mio problema.
grazie a tutti
:slight_smile:

di seguito il link al thread rivelatore:
http://www.ruby-forum.com/topic/126401#new