>我有一个哈希,其中包含一个嵌套了几级深的数组:
hash = {
Sender_Name: "Bob",
Consignement: {
Load_Type: "FCL",
JobContainer: [
{c_number: "123"}, {c_number: 456}
]
}
}
我想使用to_xml
将其转换为 xml.我能得到的最接近我想要的东西是
hash.to_xml(skip_instruct: true, skip_types: true, root: "Consolidation2")
这给了我:
<Consolidation2>
<Sender-Name>Bob</Sender-Name>
<Consignement>
<Load-Type>FCL</Load-Type>
<JobContainer>
<JobContainer>
<c-number>123</c-number>
</JobContainer>
<JobContainer>
<c-number>456</c-number>
</JobContainer>
</JobContainer>
</Consignement>
</Consolidation2>
但是JobContainer
数组包装在一个额外的标签中。我怎样才能让它输出这个(没有额外的 JobContainer 标签包装数组(:
<Consolidation2>
<Sender-Name>Bob</Sender-Name>
<Consignement>
<Load-Type>FCL</Load-Type>
<JobContainer>
<c-number>123</c-number>
</JobContainer>
<JobContainer>
<c-number>456</c-number>
</JobContainer>
</Consignement>
</Consolidation2>
5月29日更新18:
我最终接受了这篇文章的建议,它给了我想要的东西。
我建议你试试xml-simple
宝石。我不明白期望的确切输出是什么,但这是结果:
require 'xmlsimple'
=> true
XmlSimple.xml_out(hash, root_name: "Consolidation2")
=> <Consolidation2 Sender_Name="Bob">
<Consignement Load_Type="FCL">
<JobContainer c_number="123" />
<JobContainer c_number="456" />
</Consignement>
</Consolidation2>
您还可以查看文档以获取更多选项。