Uno degli oggetti del mio modello ha una colonna "testo" che contiene l'intero codice HTML di una pagina Web.Come restituire l'HTML direttamente da un controller Rails?
Mi piacerebbe scrivere un'azione controller che restituisca semplicemente questo codice HTML direttamente dal controller piuttosto che passarlo attraverso i modelli .erb come il resto delle azioni sul controller.
Il mio primo pensiero è stato quello di inserire questa azione in un nuovo controller e creare un modello .erb personalizzato con un layout vuoto, e solo <%= modelObject.htmlContent %>
nel modello - ma mi chiedevo se ci fosse un modo migliore per farlo in Rails.
(Sparse) Documentazione a http://api.rubyonrails.org/classes/ActionView/Rendering .html nel caso in cui qualcun altro lo stia cercando! :) –
È davvero necessario utilizzare il blocco 'reply_to'? 'render: text => '
text
'' funziona perfettamente per me in Rails 4. Io però 'respond_to' era solo per gestire più Accept-Types. –Rails 5 genera un avviso di deprecazione quando si utilizza 'render text: ...'. Se vuoi eseguire il rendering HTML, usa 'render html: ...', per il testo usa 'render plain: ...'. –