表达式由于没有值而没有评估

时间:2018-04-13 01:51:42

标签: python html templates jinja2 variable-assignment

所以我被扔进了一个Jinja2电子邮件模板场景,我无法弄清楚并希望能够正确描述(也许它不可能),但我也没有足够的知识来了解Jinja2和电子邮件模板如何与SQL一起工作,其中SQL是在渲染时分配@@值。我有以下内容:

<!-- {% set partner_shortname = '@@SHORTNAME' %} -->
<!-- {% set partner_name = '@@PARTNER' %} -->


<!--display values to check-->
<p>PARTNER NAME:  {{ partner_name }}</p>
<p>PARTNER SHORTNAME 1:  {{ partner_shortname }}</p>


<!--
{% if partner_shortname == 'ABCD' %}
     {% set hexColor = '#CC0000' %}
-->
    <p>LENGTH1: {{ partner_shortname|length }}</p>                                      
<!-- {% else %}
    {% set hexColor = '#57a377' %}
-->
   <p>LENGTH2: {{ partner_shortname|length }}</p>                                       
<!-- {% endif %}  -->

<!-- display hex code based on partner -->
<p>HEX CODE:  {{ hexColor }}</p>

所以,我的问题如下:打印像{{partner_shortname}}或{{partner_name}}之类的东西给了我在变量中设置的值(即:ABCD或Alpha Beta Charlie Delta),但是当它命中时我的if语句partner_shortname是@@ SHORTNAME,并且似乎没有ABCD的值,因为打印时长度为11(@@ SHORTNAME)。为什么打印的变量有值但if语句没有?我错过了什么?

0 个答案:

没有答案