2016-07-08 25 views

回答

1

这一切都取决于你如何充分定义,但是这个代码将会加载,并且Python中的groups的值将是列表[1]。有两件事情重要的事情需要注意:

  • Django的uses PyYAML,只支持(大部分)的YAML 1.1从2005年的标准,而不是从2009年
  • 最新YAML 1.2标准,以原始的标量引用(就像你的例子中的整数)Python中数据表示的引用将会丢失。即你最终会得到两个整数值,而改变这个值不会改变另一个整数值,也不会转储数据结构重新创建锚点/参考。
+0

感谢有关PyYAML实现的详细信息。他们的文档非常混乱,很难找到任何类型的更新日志。对于[我自己的答案](http://stackoverflow.com/a/38264520/247441)我不得不手动测试它。 – Tony

+0

在我的情况下失去引用是好的,它们不会被保留在Django DB中。他们唯一的观点是在YAML阶段减少重复。 – Tony

0

Django的代表YAML夹具解析到第三方库PyYAML,它不支持引用:

的如何YAML夹具与锚和参考会是什么样子实例。

使用引用加载装置似乎对我来说工作正常,虽然我的用例非常简单 - 只是主键值,有助于避免在基于Ansible库存编程生成Jinja2模板中的灯具时发生重复。