Rails supporta nativamente Ajax ed è molto semplice da utilizzare. Per eseguire una richiesta Ajax è sufficiente utilizzare gli appositi helpers.
Nell'html head della View scriveremo
<%= javascript_include_tag "prototype" %>
per importare le funzioni javascript necessarie.
Mentre per fare un link che aggiornerà un div via ajax scriveremo
<%= link_to_remote( "clicca qui",
:update => "div_da_aggiornare",
:url =>{ :action => :funzione_remota_da_chiamare }) %>
Rails provverderà a generare il codice javascript necessario per eseguire le richieste via Ajax.
Con questo comando verrà richiamato il controller corrente alla funzione "funzione_remota_da_chiamare" e l'output sarà inserito nell'apposito div chiamato "div_da_aggiornare".
il codice del controller remoto sarà simile a questo
def funzione_remota_da_chiamare
render :text => "Ciao Ciao"
end
Facile no?
Ciao Piero
Per approfondimenti onLamp - Ajax on Rails: OnLamp
Sto iniziando solo ora a provare rails (riscrivendo il sito... prova la porta 3000 :) ) ,e articoli come questo mi fanno pensare che sia un ottimo prodotto.
RispondiEliminaMa mi resta una curiosità ... come si passano dei parametri alla chiamata ajax?
nell'hash :url => { :action => funzione_da_chiamare, :id => id_da_modificare, :altro_parametro => valore, :altro_parametro2 => bablabla}
RispondiEliminapotrai recuperare i valori leggendoli l'hash param (ad esempio param[:altro_parametro])
Grazie, funziona tutto a meraviglia, a breve pubblico il sito versione Rails...
RispondiEliminaP.S. è params non param :)