2011-12-09 25 views
8

Sono curioso di sapere qual è il modo migliore per rispondere a una richiesta Ajax, sta inviando json e quindi analizzarlo dal lato client (ad esempio con pure) o dovrei rende javascript sul lato server e restituisce il risultato (con un modello js.erb)?Ruby on Rails, json vs js risposta ajax

risposta

7

L'utilizzo dei modelli js.erb tende ad essere più semplice e incoraggia a mantenere la logica dell'applicazione nei controller Rails. Per le applicazioni tradizionali, laddove in javascript viene gestita poca o nessuna logica applicativa, questa può essere una buona cosa.

D'altra parte, l'utilizzo di JSON ti incoraggia a sviluppare l'app Rails più come un server API per un'applicazione client javascript-heavy. Se stai cercando di eseguire le azioni CRUD di base su ajax e di ricaricare raramente la pagina, probabilmente si adatta meglio allo stile dell'applicazione.

Quale è il migliore in una situazione particolare dipende dal tipo di applicazione che si sta cercando di costruire e gli attributi di una particolare richiesta.

+0

+1 per le risposte JSON con i controller come API alle viste. Facendolo in questo modo si disaccoppia la logica della vista (manipolando il DOM) dal codice del controller. – Nick