在我的Rails应用程序中,我执行以下操作:
def test
data={:student=>{:name=>'hxh',:age=>12}}
render xml: data
end
我得到了
<hash slick-uniqueid="3">
<div>
<a id="slick_uniqueid"/>
</div>
<student>
<name>hxh</name>
<age type="integer">12</age>
</student>
</hash>
但我只是想:
<student>
<name>hxh</name>
<age type="integer">12</age>
</student>
我应该如何实现这一点?
答案 0 :(得分:5)
在控制台玩了几分钟之后,我可以给你这个解决方案:
将哈希值设置为:
data = {:name=>'hxh',:age=>12}
现在您可以使用:root选项指定根目录:
data.to_xml(root: "student")
这将产生以下结果:
<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<student>
<name>hxh</name>
<age type=\"integer\">12</age>
</student>
您还可以添加此选项:skip_instruct => true
以摆脱第一行。
另请阅读documentation here。