Django | 模板語法之標籤的使用(if,for..)
阿新 • • 發佈:2022-03-02
模板語法之標籤
for迴圈
語法結構:
{% for 變數名 in 待迴圈集 %}
迴圈體程式碼
{% endfor %}
# 可直接輸入for按Tab鍵補全for迴圈的語法結構
eg:
{% for foo in l %}
{{ foo }}
{% endfor %}
關鍵字:forloop
# forloop關鍵字可標識資料的狀態
first:標識for迴圈是第一次
last :標識for迴圈時最後一次
counter0 : 索引
counter : 計數
revcounter :倒序計數
revcounter0:倒序索引
if判斷
語法結構: {% if b %} # 判斷b是否為True <p>if</p> # 條件成立執行 {% elif s %} # 上述條件為False判斷elif條件 <h1>elif</h1> # elif條件成立執行 {% else %} # 上述都為False <p>else</p> {% endif %} # 結束語法 # 可直接輸入if按Tab鍵補全語法結構
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 %} # keys
<p>{{ foo }}</p>
{% endfor %}
{% for foo in d.values %} # values
<p>{{ foo }}</p>
{% endfor %}
{% for foo in d.items %} # items
<p>{{ foo }}</p>
{% endfor %}
with起別名:
{% with dd.hobby.2.info as nb %} <p>{{ nb }}</p> # 在with語法內就可以通過as後面的別名快速的使用到前面非常複雜獲取資料的方式 <p>{{ dd.hobby.2.info }}</p> # 也可以使用之前的 {% endwith %}