Display XML as text

I have question regarding render :text ... I read the conten of XML file and display it using render :text ... but the content only is shown and not the entire xml file ... How do I get the xml file display as xml file in the output?

to state with an example the problem I have if the xml is <animal>dog</animal> and I use render :text then output is only dog... I want to output entire <animal>dog</animal>

Need help

Regards, Sudhindra


are you sure that this is real output? Try using wget or curl to see what real output is. Or maybe look into page source? (Ctrl + V on firefox). It might be that your browser is not displaying xml tags just ignoring them, and displays only what's inside.

Best, H

You need to escape the angle brackets, e.g.

<% @xml = "<animal>dog</animal>" %>

<%=h @xml %>

Try the above with and without the 'h'.

Why don’t you use the render :xml?

Rendering XML

Rendering XML sets the content type to application/xml.

# Renders '<name>David</name>'
  render :xml => {:name => "David"}.to_xml

It‘s not necessary to call to_xml on the object you want to render, since [render](http://api.rubyonrails.org/classes/ActionController/Base.html#M000633) will automatically do that for you:

# Also renders '<name>David</name>'
  render :xml => {:name => "David"}