Kamilski81
Kamilski81

Reputation: 15117

how do i dynamically change my format rendering engine in rails?

My default templating engine is haml, but I would to sometimes change it to erb if i specify a specific parameter?

For example, I am pasting in some html code and would just like to test the code without HAML complaining about its format.

Any idea how to do this?

Upvotes: 0

Views: 441

Answers (3)

arieljuod
arieljuod

Reputation: 15838

do something like:

if params[:render_erb]
  render 'file.html.erb'
else
  render 'file.html.haml'
end

and call the action with ?render_erb=true

or

render "file.html.#{params[:render]}" ir params[:render]

and call it ?render=haml or ?render=erb (or nothing and it will use the default

at the end of the controller's action that you are using

Upvotes: 3

Todd A. Jacobs
Todd A. Jacobs

Reputation: 84363

You can use different templates in the same application, and you can use different template engines for views, partials, and layouts, but as far as I know you can't duck in and out of multiple template engines within the same template file.

If you just want to drop some code in using a different template language, then I'd put it in a separate partial. That certainly seems easiest in this particular case.

Upvotes: 0

Hauleth
Hauleth

Reputation: 23566

Am I wrong that you simply need to save file as your_file.html.erb instead of your_file.html.haml?

Upvotes: 0

Related Questions