2010-07-15 22 views
5

Stackoverflow me ha enseñado mucho sobre qué RESTful, MVC, GET/POST es el correcto, me pregunto cómo la gente aprendió a programar/diseñar en el pasado antes de que Stackoverflow existiera. ;)Obteniendo HTML en el controlador desde la plantilla de vista

Dado que, aquí hay otra pregunta sobre cómo puedo hacer un procedimiento (bastante) común de la manera más adecuada.

Necesito generar un HTML a partir de una plantilla de vista que se utilizará en una acción de controlador. En ese sentido, es algo así como ActiveMailer.

  1. plantilla HTML en un archivo .html.erb
  2. acción del controlador con los parametros
  3. Obtener el código HTML de la plantilla a utilizar en el controlador

¿Cuál es la mejor manera de que ? Pseudo código será muy apreciado, gracias!

Respuesta

11

Quizás me falta algo, ¿pero solo quieres render_to_string?

http://api.rubyonrails.org/classes/ActionController/Base.html#M000465

foo = render_to_string(:template => 'foo/bar', :locals => { :something => 'value' }) 

Eso es básicamente lo mismo que llamar rinde en una plantilla, pero escribe a una cadena (foo) en lugar de la respuesta HTTP.

+1

también puede especificar ': layout => false' para no incluir la porción generada de los rieles. – sircapsalot

Cuestiones relacionadas