模板语法,标签:for循环,if判断,for与if混用,处理字典,with起别名

模板语法,标签:for循环,if判断,for与if混用,处理字典,起别名

for循环

# for 循环
	{% for foo in l %}
<p>{{ forloop }}</p>
<p>{{ foo }}</p>  一个个元素
	{% endfor %}
  
输出:
{'parentloop': {}, 'counter0': 0 索引, 'counter': 1 自上而下顺序, 'revcounter': 6, 'revcounter0': 5, 'first': True for循环开始, 'last': False }

{'parentloop': {}, 'counter0': 5, 'counter': 6, 'revcounter': 1, 'revcounter0': 0, 'first': False, 'last': True for循环结束}

if判断

{% if b %}
    <p>baby</p>
{% elif s%}
    <p>都来把</p>
{% else %}
    <p>老baby</p>
{% endif %}

for与if混用

{% for foo in lll %}
    {% if forloop.first %}
        <p>这是我的第一次</p>
    {% elif forloop.last %}
        <p>这是最后一次啊</p>
    {% else %}
        <p>{{ foo }}</p>
    {% endif %}
    {% empty %} # 可迭代对象为空时打印
        <p>for循环的可迭代对象内部没有元素 根本没法循环</p>
{% endfor %}

处理字典其他用法

# 处理字典其他方法
{% for foo in d.keys %}
    <p>{{ foo }}</p>
{% endfor %}
{% for foo in d.values %}
    <p>{{ foo }}</p>
{% endfor %}
{% for foo in d.items %} # 答应字典K:V
    <p>{{ foo }}</p>
{% endfor %}

with起别名

{% with d.hobby.3.info as nb  %}
    <p>{{ nb }}</p>
    在with语法内就可以通过as后面的别名快速的使用到前面非常复杂获取数据的方式
    <p>{{ d.hobby.3.info }}</p>
{% endwith %}
posted @ 2022-03-03 16:53  谢俊杰  阅读(119)  评论(0编辑  收藏  举报