Django模板語言 Tags使用詳解
Tags
# 普通for循環(huán) <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% endfor %} </ul>
for循環(huán)可用的一些參數(shù):
Variable | Description |
---|---|
forloop.counter | 當(dāng)前循環(huán)的索引值(從1開始) |
forloop.counter0 | 當(dāng)前循環(huán)的索引值(從0開始) |
forloop.revcounter | 當(dāng)前循環(huán)的倒序索引值(從1開始) |
forloop.revcounter0 | 當(dāng)前循環(huán)的倒序索引值(從0開始) |
forloop.first | 當(dāng)前循環(huán)是不是第一次循環(huán)(布爾值) |
forloop.last | 當(dāng)前循環(huán)是不是最后一次循環(huán)(布爾值) |
forloop.parentloop | 本層循環(huán)的外層循環(huán) |
for ... empty
# 如果user_list 里面元素為0個(gè)的時(shí)候執(zhí)行 empty <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% empty %} <li>空空如也</li> {% endfor %} </ul>
if判斷
# if,elif和else {% if user_list %} 用戶人數(shù):{{ user_list|length }} {% elif black_list %} 黑名單數(shù):{{ black_list|length }} {% else %} 沒有用戶 {% endif %}
# 當(dāng)然也可以只有if和else {% if user_list|length > 5 %} 七座豪華SUV {% else %} 黃包車 {% endif %} # if語句支持 and 、or、==、>、<、!=、<=、>=、in、not in、is、is not判斷。
with
# 定義一個(gè)中間變量,多用于給一個(gè)復(fù)雜的變量起別名。 # 注意等號(hào)左右不要加空格。 {% with total=business.employees.count %} {{ total }} employee{{ total|pluralize }} {% endwith %} # 或 {% with business.employees.count as total %} {{ total }} employee{{ total|pluralize }} {% endwith %}
csrf_token
這個(gè)標(biāo)簽用于跨站請(qǐng)求偽造保護(hù)。
在頁面的form表單里面寫上{% csrf_token %}
注意事項(xiàng)
Django的模板語言不支持連續(xù)判斷,即不支持以下寫法:
{% if a > b > c %} ... {% endif %}
Django的模板語言中屬性的優(yōu)先級(jí)大于方法
def xx(request): d = {"a": 1, "b": 2, "c": 3, "items": "100"} return render(request, "xx.html", {"data": d})
如上,我們?cè)谑褂胷ender方法渲染一個(gè)頁面的時(shí)候,傳的字典d有一個(gè)key是items并且還有默認(rèn)的 d.items() 方法,此時(shí)在模板語言中:
{{ data.items }}
默認(rèn)會(huì)取d的items key的值。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python中mechanize庫的簡(jiǎn)單使用示例
最近的項(xiàng)目中使用到了mechanize庫,下面寫個(gè)簡(jiǎn)單使用的小例子給大家參考2014-01-01Python3.x+pycharm+Anaconda中縮小打包的.exe體積的問題
這篇文章主要介紹了Python3.x+pycharm+Anaconda中縮小打包的.exe體積的問題,本文通過圖文實(shí)例相結(jié)合給大家分享解決方案,需要的朋友可以參考下2021-08-08淺談python出錯(cuò)時(shí)traceback的解讀
這篇文章主要介紹了淺談python出錯(cuò)時(shí)traceback的解讀,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07Python 如何實(shí)時(shí)向文件寫入數(shù)據(jù)(附代碼)
這篇文章主要介紹了Python 如何實(shí)時(shí)向文件寫入數(shù)據(jù)(附代碼),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07Python常用時(shí)間操作總結(jié)【取得當(dāng)前時(shí)間、時(shí)間函數(shù)、應(yīng)用等】
這篇文章主要介紹了Python常用時(shí)間操作,包括取得當(dāng)前時(shí)間、時(shí)間函數(shù)、應(yīng)用等概念與相關(guān)操作技巧,需要的朋友可以參考下2017-05-05