据我所知,这是有效的xml,如果不是最优雅的:
<items>
<item>...</item>
<item>...</item>
</items>
解析时(使用HTTParty内置的Crack :: XML)我得到了
{:items => {:item => [...]}}
很好,但是当我在Rails中将它转换回xml时,它会添加一个元素:
<items>
<item>
<item>...</item>
<item>...</item>
</item>
</items>
是否有一种选择,或者更有可能的方法来定制构建器的行为以避免这种情况?我看到了一种方法来指定to_xml添加的这个根元素的名称,但是没有办法让它假设如果一个哈希对的值是一个数组,则将该数组的每个元素包装在一个名称为密钥,以便to_xml将返回与我开始的结构类似的东西。
更新
也许是一个更简单的方式来提出这个问题:是否有一个可逆的解析器/序列化器组合,所以如果我解析一些xml然后序列化生成的Hash,我会得到相同的XML?