是否有一种简单的方法可以将未格式化的xml字符串打印到rails应用程序中的ruby屏幕上?像xml美化的东西?
答案 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。