2010-01-19 23 views
6

Sono un novizio in Ruby On Rails, qualcuno può dirmi come aggiornare una pagina.Aggiornamento automatico di una pagina in Ruby on Rails

  1. Senza alcuna valori inviati
  2. Con valori precedenti presentate
+1

Quando si dice "aggiorna", intendi che la pagina si aggiornerà automaticamente ogni "n" minuti o c'è un controllo (ad es. Pulsante) che l'utente attiverà per aggiornare la pagina? – BryanH

+0

aggiornerà automaticamente – markiv

risposta

7

ActionView::Helpers::PrototypeHelper#periodically_call_remote:

  1. Senza alcuna valori inviati

    <%= periodically_call_remote(:url => {}) %> 
    
  2. Con valori precedenti sottoposta,:

    <%= periodically_call_remote(:url => params) %> 
    

è possibile fornire una: opzione di frequenza per specificare la frequenza chiamarlo.

Si potrebbe anche voler impostare il blocco format.js nel controller per rendere un modello RJS che aggiornerà solo le cose che potrebbero cambiare.

Edit: Questo approccio è stato sconsigliato con la versione Rails 3.0

Questa domanda (Rails 3 equivalent for periodically_call_remote) fornisce un metodo per realizzare questo in versioni più recenti di Ruby on Rails.

+0

Il tuo collegamento sembra essere rotto. – Bach

+0

Non rotto, appena deprecato. Ho aggiornato il link per indicare la documentazione dell'ultima versione di rails supportata, inoltre ho aggiunto un collegamento per rispondere che fornisce un metodo per eseguire ciò nelle versioni più recenti di Rails. – EmFi

0

Si potrebbe anche utilizzare lo script seguente per auto aggiornare una pagina intera ...

setTimeout ("location.reload();", 10000);
+0

linguaggio di script = "javascript" type = "text/javascript – abcreddy