Ruby:如何使用非唯一值遍历YAML节点树?

时间:2010-12-06 11:41:47

标签: ruby

我有一份YAML文件,我相信它是有效的(至少它会是 可用XML表示:

purchase_order:
  date: 10/12/2010
  vendor: 12345
  item:
    product: Tomatoes
    quantity: 5
  item:
    product: Eggs
    quantity: 2

问题是在这上使用YAML.read会在Ruby中产生一个Hash 只发生一个采购订单项,因为(当然)它必须是唯一的。

如何在这样的YAML文档中遍历节点?

1 个答案:

答案 0 :(得分:2)

问题是用于描述项目数组的YAML不正确。

就是这样:

purchase_order: 
  date: 10/12/2010
  vendor: 12345
  items: 
  - quantity: 5
    product: Tomatoes
  - quantity: 2
    product: Eggs

所以我认为你不能把它解析为YAML。

也许将其解析为具有类似YAML结构的文本文件是最佳解决方案。