django模板语言判断是否异常。

时间:2017-08-09 10:59:39

标签: python django

views.py中的代码:

def home(request):
    return render(request, 'home.html', {'age':37})

这是django模板示例中的if模板判断:

<tr>
    <td>
        {% if age > 25 %}
        <span> >25 </span>
        {% elif age > 30 %}
        <span> >30 </span>
        {% elif age > 35 %}
        <span> >35 </span>
        {% else %}
        <span> other </span>
        {% endif %}
    </td>
</tr>

但是如果我刷新safira,那么所有打印>25,而不是>35,为什么?

2 个答案:

答案 0 :(得分:2)

逻辑顺序如下:

<tr>
    <td>{% if age > 35 %}
            <span> >35 </span>
        {% elif age > 30 %}
            <span> >30 </span> 
        {% elif age > 25 %}
            <span> >25 </span>
        {% else %}
            <span> other </span>
        {% endif %}
    </td>
</tr>

答案 1 :(得分:0)

你没有说明是否足够好。脚本将从上到下遍历if,第一个是True将执行属于该if语句的代码,然后退出if块。所以你的第一个'如果'是真的,因为37大于25并且会退出,忽略其他的精灵。

如果说你的条件更精确地大于x且小于y等,那会更好。