如何在单个.yaml文件中设置yaml引用?

时间:2012-12-18 16:59:58

标签: javascript html5 yaml jinja2

我继承了大量包含如下属性的.yaml文件:

our_price: Our price is just <sup>$</sup><span class="amount">99.95</span> this month

现在,客户希望能够获取my_price,添加一些税费,并在jinja模板中显示总价。

我想要做的是添加一个新属性,所以它看起来像这样:

simple_price: 99.95
our_price: Our price is just <sup>$</sup><span class="amount">simple_price</span> this month

我尝试过使用别名,但似乎它们只能作为节点的整个值。

有没有办法在YAML中设置它,或者从jinja2中的our_price字符串中提取浮点数?

1 个答案:

答案 0 :(得分:0)

虽然我对jinja一无所知,但我认为你的问题在概念上类似于this StackOverflow question

简短的回答是,你不能按照你/你的客户想要的方式在YAML中进行字符串插值。我相信您必须将simple_price值传递给视图文件(或等效的jinja)中的our_price值,并将YAML条目更改为:

simple_price: 99.95
our_price: Our price is just <sup>$</sup><span class="amount">%{simple_price}</span>

或者,使用别名和锚点,您可以将价格和字符串作为数组返回到视图中,然后将它们连接到一个字符串中:

simple_price: &simple_price <sup>$</sup><span class="amount">99.95</span>
our_price: 
  - Our price is just
  - *simple_price