我想在YAML文字块标量内使用一个变量。
这就是我想要做的:
markup: |
<title>
{{ title }}
</title>
可以通过某种方式做到吗?
我很欣赏在不使用文字块标量的情况下执行此示例很简单,但是我在Foundation 6堆栈中的实际用例将包含比我在此处显示的更多的标记和更多的变量。
答案 0 :(得分:1)
在文字块标量中没有变量之类的东西。
首先,YAML中没有变量(单词 variable 在YAML规范中仅出现一次,例如在示例文档中,编号2.28)。
其次,由于某种原因,这被称为 literal 。不对任何字符进行解释。
当然,加载文档的某些程序可能会对花括号({}
之间的文本执行某些操作。例如,将其解释为jinja2模板。但是不知道这样的程序会做什么或期望什么,对于尖括号(<>
)之间的信息期望像这样的内容同样有效。
因此在YAML内,无法使用变量,无论是在文字块式标量内部还是在变量外部。
关于模板:我使用了从模板生成YAML并将模板应用于加载的字符串标量的程序(通过递归遍历树)。您的例子可以是。