詳解django中Template語(yǔ)言
Django是一個(gè)開放源代碼的Web應(yīng)用框架,由Python寫成。采用了MTV的框架模式,即模型M,視圖V和模版T。它最初是被開發(fā)來(lái)用于管理勞倫斯出版集團(tuán)旗下的一些以新聞內(nèi)容為主的網(wǎng)站的,即是CMS(內(nèi)容管理系統(tǒng))軟件。并于2005年7月在BSD許可證下發(fā)布。這套框架是以比利時(shí)的吉普賽爵士吉他手Django Reinhardt來(lái)命名的。
下面看下本文重點(diǎn)給大家介紹的django中Template語(yǔ)言,詳情如下:
Template本身也有自己的語(yǔ)言和語(yǔ)法,用來(lái)處理簡(jiǎn)單的數(shù)據(jù)顯示
1.常用語(yǔ)法
判斷指令
{% if 條件 %}...{%endif%}
{% if 條件 %}...{%elif 條件 %}...{%endif%}
{% if 條件 %}...{%elif 條件 %}...{%else%}...{%endif%}
{% if a in b %}...{%endif%}
循環(huán)指令
{%for %} ...{%endfor}
{% froloop.counter%}用來(lái)顯示當(dāng)前循環(huán)的計(jì)數(shù)器,從1開始
{% forloop.counter0%}用來(lái)顯示當(dāng)前循環(huán)的計(jì)數(shù)器,從0開始
{% froloop.recounter%} 和counter相反,反過(guò)來(lái)計(jì)算的計(jì)數(shù)值,至1結(jié)束
{% forloop.recounter0%}和counter0相反,反過(guò)來(lái)計(jì)算的計(jì)數(shù)值,至0結(jié)束
{% forloop.first%}返回的是布爾值,
{% forloop.last%}返回的是布爾值,
{% forloop.parentloop%}用來(lái)引用上一層循環(huán)(父級(jí)循環(huán))的forloop對(duì)象
{% cycle%}:網(wǎng)頁(yè)出現(xiàn)表格是會(huì)根據(jù)奇、偶行數(shù)存放不一樣的設(shè)置,比如顏色。
{% empty%} :如果for 循環(huán)式空字符串,就會(huì)導(dǎo)致for循環(huán)執(zhí)行不下去,但是頁(yè)面不能空著,就讓他處理下面的這個(gè)語(yǔ)句。
{% now 格式字符串 %} : 顯示當(dāng)前日期時(shí)間的功能,不用從后端傳入。格式字符串:'D M Y hⓂ️s a'
{% lorem %} :不知道什么內(nèi)容時(shí)的填充符,表示一段沒(méi)有意義的文字。{% lorem [count][method][random]%} count是次數(shù),method可以設(shè)置為 w (表示文字),p (表示段落),最后加上random回隨機(jī)出現(xiàn)這些字符串
2.過(guò)濾器與其他語(yǔ)法標(biāo)識(shí)符
| 過(guò)濾器名 | 用法 | 范例 |
|---|---|---|
| addslashes | 為字符串需要的地方加上轉(zhuǎn)義字符 | {{mes|addslashes}},如mes的內(nèi)容為"It's a cat",會(huì)變成“It' a cat ” |
| capfirst | 字符串首字母大寫 | |
| center,ljust,rjust | 為字符串內(nèi)容加上指定空格后居中,靠左,靠右 | {{mes|cener:"15"}},mes居總,占據(jù)15個(gè)字符 |
| cut | 在字符串中刪除指定的子字符串 | {{mes|cut: ' '}} ,移除所有空格字符串 |
| date | 設(shè)置日期顯示時(shí)間 | {{value|date:" D d M Y"}} value為datetime的標(biāo)準(zhǔn)格式, 可以用date來(lái)指定詳細(xì)的格式和內(nèi)容, |
| default | 如果沒(méi)有值,設(shè)置默認(rèn)值 | {{mes|default :"沒(méi)有信息“}} |
| dictsort | 為字典形式內(nèi)容的變量排列順序 | {{value|dictsort :"name"}},以名字字段來(lái)作為排序的依據(jù) |
| dictsortreversed | 上一指令的反向排序 | |
| divisibleby | 測(cè)試數(shù)值數(shù)據(jù)是否可被指定的數(shù)整除 | {{value|divisibleby:5} 測(cè)試value是否可被5整除 |
| escape | 把字符串的HTML標(biāo)記變成顯示用的的字符串 | {{msg|escape}},msg中若有HTM標(biāo)志,則會(huì)失去作用且被以文字的形式顯示出來(lái) |
| filesizeformat | 以人們習(xí)慣的方式顯示文件大小的格式(KB,MB) | {{value| filesizeformat}} |
| first | 只取出列表中的第一個(gè)數(shù)據(jù) | {{value|first}} |
| last | 只取出列表中的最后一個(gè)數(shù)據(jù) | 同上 |
| length | 返回列表的數(shù)據(jù)長(zhǎng)度 | 同上 |
| length_is | 測(cè)試數(shù)據(jù)是否為指定長(zhǎng)度 | {{value | length_is: "3"}}, 測(cè)試values的長(zhǎng)度是否為3 |
| floatformat | 以指定的浮點(diǎn)數(shù)格式來(lái)顯示數(shù)據(jù) | {{value|floatformat:3}}指定三位小數(shù)位 |
| linebreaks | 把文字內(nèi)容的換行符號(hào)轉(zhuǎn)換為HTML的 和 |
{{msg|linebreaks}} |
| linebreaksbr | 把文字內(nèi)容的換行符號(hào)轉(zhuǎn)換為HTML的 |
{{msg|linebreaksbr}} |
| linenumber | 為顯示的文字加上行號(hào) | {{msg|linenumbers}} |
| lower/upper | 把字符串的全部?jī)?nèi)容轉(zhuǎn)換為小寫/大寫 | 同上 |
| random | 以隨機(jī)數(shù)將前面的數(shù)據(jù)內(nèi)容顯示出來(lái) | {{values | random}} |
| safe | 標(biāo)記字符串為安全的,不需要再處理轉(zhuǎn)義字符 | {{msg|sage}} |
| slugify | 把字符串內(nèi)的空格編程”-“,讓字符串可以安全地放在網(wǎng)址欄 | {{msg|slugify}},若原本的msg為”It's a cat",則會(huì)返回“Its-a-cat" |
| striptags | 把所有的HTML標(biāo)記都刪除 | |
| truncatechars | 把過(guò)長(zhǎng)的字符串裁切成指定長(zhǎng)度,同時(shí)最后面的3個(gè)字符會(huì)轉(zhuǎn)換成”..." | {{msg|truncatechars:20}} |
| wordcount | 計(jì)算字?jǐn)?shù) | {{msg|wordcount}} |
| yesno | 按照值得內(nèi)容是True,F(xiàn)alse,None,顯示出有意義的內(nèi)容 | {{value|yesno:"對(duì)的,錯(cuò)了,不知道"}} |
總結(jié)
到此這篇關(guān)于詳解django中Template語(yǔ)言的文章就介紹到這了,更多相關(guān)django中template語(yǔ)言內(nèi)容請(qǐng)搜索腳本之家以前的文章或下面相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)敲擊木魚積累功德小項(xiàng)目
最近大家都很流行用手機(jī)敲擊電子木魚積累功德,這在很多短視頻中也常常見(jiàn)到。本文將用Python實(shí)現(xiàn)這一效果,感興趣的小伙伴可以了解一下2022-11-11
Django自關(guān)聯(lián)實(shí)現(xiàn)多級(jí)聯(lián)動(dòng)查詢實(shí)例
這篇文章主要介紹了Django自關(guān)聯(lián)實(shí)現(xiàn)多級(jí)聯(lián)動(dòng)查詢實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
python爬取NUS-WIDE數(shù)據(jù)庫(kù)圖片
本文給大家分享的是使用Python制作爬蟲爬取圖片的小程序,非常的簡(jiǎn)單,但是很實(shí)用,有需要的小伙伴可以參考下2016-10-10
pandas報(bào)錯(cuò)AttributeError: DataFrame object has&
這篇文章主要介紹了pandas報(bào)錯(cuò)AttributeError: DataFrame object has no attribute ix問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
Python中函數(shù)及默認(rèn)參數(shù)的定義與調(diào)用操作實(shí)例分析
這篇文章主要介紹了Python中函數(shù)及默認(rèn)參數(shù)的定義與調(diào)用操作,結(jié)合實(shí)例形式分析了Python中函數(shù)的定義及參數(shù)的使用技巧,需要的朋友可以參考下2017-07-07
Django基礎(chǔ)知識(shí) web框架的本質(zhì)詳解
這篇文章主要介紹了Django基礎(chǔ)知識(shí) web框架的本質(zhì)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07

