假设我有一个包含一个对象数组的YML文件original.yml
array_in_yml:
- start: 1
- middle: 2
- end: 3
我把它包括在modified.yml里
!include "original.yml"
array_in_yml: []
当我加载modified.yml时,我希望这个数组是空的,但是它似乎有3个值作为original.yml。如何强制/重写数组为空?
发布于 2016-12-19 09:28:35
关于!include
的讨论似乎有点偏离了实际问题。让我们假设以某种未知的方式将!include
行替换为original.yml
中的内容。我们应该:
array_in_yml:
- start: 1
- middle: 2
- end: 3
array_in_yml: []
这是无效的YAML,因为字典中的每个键都必须是唯一的,但是要使用键array_in_yml
两次。YAML处理器可能忽略这一点,只需将第一个值(由三个项组成的序列)分配给键array_in_yml
。
现在最重要的部分是:在YAML中没有办法修改以前给定的值。不能覆盖以前用另一个值给出的值。您想要做的是在YAML规范之外,您将需要一些合并工具,为您做这样的替换。
https://stackoverflow.com/questions/41204181
复制相似问题