使用<b> HTML代码

时间:2015-09-07 08:31:48

标签: python html flask jinja2

有人可以解释一下这些代码吗?我知道我们正在设置hl以纠正其min是否低于highlited min,但我不明白为什么我们在打开粗体HTML代码后完成if块。我不应该在所有粗体代码之后添加endif吗?

 {% set hl = weather[month]['max'] >= highlight['max'] %}
        {% if hl %}<b>{% endif %}
        {{ weather[month]['max'] }}
        {% if hl %}</b>{% endif %}

2 个答案:

答案 0 :(得分:2)

if出现两次,因为开始和结束的粗体标签都是有条件的 - 文字显示为任何一种方式,只是它是否为粗体随highlight['max']的值而变化。您已经展示的代码的替代方法是:

{% if weather[month]['max'] >= highlight['max'] %}
    <b>{{ weather[month]['max'] }}</b>
{% else %}
    {{ weather[month]['max'] }}
{% endif %}

对于新手读者来说可能更清楚,但意味着重复{{ weather[month]['max'] }}部分。

答案 1 :(得分:1)

第一个是打印开始标签,第二个是放置关闭标签 并且值始终打印。

结论只有当这个if为真时,值才是粗体,否则值不会变为粗体。

{% set hl = weather[month]['max'] >= highlight['max'] %}
        {% if hl %} // <= Opening tag if the condition is true
               <b>
        {% endif %}

           {{ weather[month]['max'] }} //  <= Value 

        {% if hl %} // <= Closing tag if the condition is true
               </b>
        {% endif %}

<强>说明: 如果温度高于高亮[&#39; max&#39;]中定义的最高温度,则用粗体标记。