如何美化rails应用程序中的xml代码

时间:2011-04-11 13:49:17

标签: ruby-on-rails ruby xml

是否有一种简单的方法可以将未格式化的xml字符串打印到rails应用程序中的ruby屏幕上?像xml美化的东西?

2 个答案:

答案 0 :(得分:19)

Ruby核心REXML :: Document有漂亮的打印:

REXML::Document#write( output=$stdout, indent=-1, transitive=false, ie_hack=false )
  

缩进:整数。如果是-1,没有   缩进将被使用;否则,   缩进将是此数字的两倍   空间,孩子们   缩进额外金额。为一个   值3,每个项目都是   缩进3个级别,或6个以上   空间(2 * 3)。默认为-1

一个例子:

require "rexml/document"

doc = REXML::Document.new "<a><b><c>TExt</c><d /></b><b><d/></b></a>"
out = ""
doc.write(out, 1)
puts out

制作:

<a>
 <b>
  <c>
   TExt
  </c>
  <d/>
 </b>
 <b>
  <d/>
 </b>
</a>

编辑: Rails已经加载了REXML,因此您只需要生成新文档,然后将漂亮的打印XML写入某个字符串,然后将其嵌入到&lt; pre&gt;中。 标签。

答案 1 :(得分:1)

Nokogiri gem怎么样?这是一个example use