Jinja模板逻辑

时间:2015-09-21 20:19:45

标签: jinja2

我是jinja的新人。我使用通用编程语言逻辑与jinja无法正常工作。在我的代码中我想检查天气是否执行块内循环,如果它没有在整个循环中执行,则显示消息没有课程。

{% set p=0  %}
{% for i in range(0, browse_allcourse|length) %}
{% if browse_allcourse[i]['category']=="IT & Software" %}
<a href="#" class="list-group-item">{{browse_allcourse[i]['coursetitle']}}</a>
 {% set p=p+1 %}
{% endif%}

{% endfor %}
{% if p==0  %}
<a href="javascript:void(0)" class="list-group-item">No course.</a>
{% endif %}

2 个答案:

答案 0 :(得分:0)

{% set p=0  %}
{% for i in range(0, browse_allcourse|length) %}
{% if browse_allcourse[i]['category']=="IT & Software" %}
<a href="#" class="list-group-item">{{browse_allcourse[i]['coursetitle']}}</a>
 {% set p=p+1 %}
{% else %}
No courses
{% endif%}

{% endfor %}
{% if p==0  %}
<a href="javascript:void(0)" class="list-group-item">No course.</a>
{% endif %}

关键是 {%else%}没有课程{%endif%}

答案 1 :(得分:0)

Jinja允许您在if循环中添加for条件。

{% for course in browse_allcourse if course.category == "IT & Software") %}
    <a href="#" class="list-group-item">{{ course.coursetitle }}</a>
{% else%}
    <a href="javascript:void(0)" class="list-group-item">No course.</a>
{% endfor %}