Django 學習日記 - Templates - setp10

1 模板的組成

HTML代碼+邏輯控制代碼熔脂。

2 邏輯控制代碼的組成

邏輯控制代碼類型 使用方法
變量(使用雙大括號來引用變量 ) {{ var_name }}
標簽(tag)的使用(使用大括號和百分號的組成來表示使用tag ) {% load staticfiles %}
過濾器(filter)的使用 {{ ship_date | date:"F j, Y" }}坷随,ship_date變量傳給data過濾器,data過濾器通過使用"F j, Y"這幾個參數(shù)來格式化日期數(shù)據(jù)踊餐。"|"代表類似Unix命令中的管道操作。

2.1 常用標簽(tag)

標簽 說明
{% if %} 可以使用and, or, not來組織你的邏輯棉钧。但不允許and和or同時出現(xiàn)的條件語句中疯汁。新版本中已經(jīng)支持{% elif %}這樣的用法。
{% ifequal %}和{% ifnotequal %} 比較是否相等地来,只限于簡單的類型戳玫,比如字符串,整數(shù)未斑,小數(shù)的比較咕宿,列表,字典蜡秽,元組不支持府阀。
{% for %} 用來循環(huán)一個list,還可以使用resersed關(guān)鍵字來進行倒序遍歷载城,一般可以用if語句來先判斷一下列表是否為空,再進行遍歷费就;還可以使用empty關(guān)鍵字來進行為空時候的跳轉(zhuǎn)诉瓦。
{% cycle %} 在循環(huán)時輪流使用給定的字符串列表中的值。
{# #} 單行注釋
{% comment %} 多行注釋
{% csrf_token %} 生成csrf_token的標簽力细,用于防止跨站攻擊驗證睬澡。
{% debug %} 調(diào)用調(diào)試信息
{% filter %} 將filter 標簽圈定的內(nèi)容執(zhí)行過濾器操作。
{% autoescape %} 自動轉(zhuǎn)義設(shè)置
{% firstof %} 輸出第一個值不等于False的變量
{% load %} 加載標簽庫
{% now %} 獲取當前時間
{% spaceless %} 移除空格
{% url %} 引入路由配置的地址
{% verbatim %} 禁止render
{% with %} 用更簡單的變量名緩存復雜的變量名

2.2 常用過濾器(filter)

過濾器 作用
add 給變量加上響應的值
addslashes 給變量中的引號前加上斜線
capfirst 首字母大寫
cut 從字符串中移除指定的字符
date 格式化日期字符串
default 如果值是False眠蚂,就替換成設(shè)置的默認值煞聪,否則就使用本來的值
default_if_none 如果值是None,就替換成設(shè)置的默認值逝慧,否則就使用本來的值
dictsort 按照設(shè)定參數(shù)(key)對應的value對列表進行排序
dictsortreversed 和上面恰好相反
divisibleby 是否能夠被某個數(shù)字整除昔脯,是的話返回True啄糙,否則返回False
escape 對字符串進行轉(zhuǎn)義
escapejs 替換value中的某些字符,以適應JAVASCRIPT和JSON格式
filesizeformat 格式化文件大小顯示
first 返回列表中的第一個值
last 返回列表中最后一個值
floatformat 格式化浮點數(shù)
length 求字符串或者列表長度
length_is 比較字符串或者列表的長度
urlencode 對URL進行編碼處理
upper\lower 大寫\小寫
safe 對某個變量關(guān)閉自動轉(zhuǎn)義
slice 切片操作
time 格式化時間
timesince 格式化時間 (e.g., “4 days, 6 hours”).
truncatechars 按照字符截取字符串
truncatewords 按照單詞截取字符串
striptags 過濾掉html標簽

3 模板包含和繼承

3.1 概念

  • 包含

{% include %} 允許在模板中包含其它模板的內(nèi)容云稚。
標簽的參數(shù)可以是:模板名稱 隧饼、變量、字符串静陈。
{% include 'nav.html' %}
{% include 'app/nav.html' %}
{% include template_name %}
還可以在包含的時候傳遞變量燕雁。

  • 繼承:

本質(zhì)上說:模板繼承就是先構(gòu)造一個基礎(chǔ)框架模板,而后在其子模板中對它所包含站點共用部分和定義進行重載鲸拥。
1拐格、定義塊:{% block %}
2、繼承父模板{% extends %}

3.2 注意事項

  1. 包含和繼承可以把一些共用的網(wǎng)頁模塊獨立出來刑赶,以減少代碼的冗余捏浊。
  2. 如果在模板里使用{% extends %}的話,這個標簽必須在所有模板標簽的最前面角撞,否則模板繼承不工作
  3. 通常盡可能模板里的{% block %}越多越好呛伴,子模板不必定義所有的父block
  4. 如果你需要得到父模板的塊內(nèi)容,{{ block.super }}變量可以幫你完成工作
    當你需要給父塊添加內(nèi)容而不是取代它的時候這就很有用
  5. 不能在同一模板里定義多個同名的{% block %}谒所,因為塊標簽同時在兩個地方工作热康,不僅僅在子模板中,而且在父模板中也填充內(nèi)容劣领,如果子模板有兩個同名的標簽姐军,父模板將不能決定使用哪個塊內(nèi)容來使用

4 參考鏈接

Django 1.9:官方文檔
Django 1.9:官方文檔 - 包含
Django 1.9:官方文檔 - 模塊
Django 1.9:官方文檔 - 繼承
Django 1.82:中文翻譯文檔【僅供參考】

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市尖淘,隨后出現(xiàn)的幾起案子奕锌,更是在濱河造成了極大的恐慌,老刑警劉巖村生,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件惊暴,死亡現(xiàn)場離奇詭異,居然都是意外死亡趁桃,警方通過查閱死者的電腦和手機辽话,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來卫病,“玉大人油啤,你說我怎么就攤上這事◇翱粒” “怎么了益咬?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長帜平。 經(jīng)常有香客問我幽告,道長梅鹦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任评腺,我火速辦了婚禮帘瞭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蒿讥。我一直安慰自己蝶念,他們只是感情好,可當我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布芋绸。 她就那樣靜靜地躺著媒殉,像睡著了一般。 火紅的嫁衣襯著肌膚如雪摔敛。 梳的紋絲不亂的頭發(fā)上廷蓉,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天,我揣著相機與錄音马昙,去河邊找鬼桃犬。 笑死,一個胖子當著我的面吹牛行楞,可吹牛的內(nèi)容都是我干的攒暇。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼子房,長吁一口氣:“原來是場噩夢啊……” “哼形用!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起证杭,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤田度,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后解愤,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體镇饺,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年送讲,在試婚紗的時候發(fā)現(xiàn)自己被綠了奸笤。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡李茫,死狀恐怖揭保,靈堂內(nèi)的尸體忽然破棺而出肥橙,到底是詐尸還是另有隱情魄宏,我是刑警寧澤,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布存筏,位于F島的核電站宠互,受9級特大地震影響味榛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜予跌,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一搏色、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧券册,春花似錦频轿、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至骄蝇,卻和暖如春膳殷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背九火。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工赚窃, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人岔激。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓勒极,卻偏偏與公主長得像,于是被迫代替她去往敵國和親鹦倚。 傳聞我的和親對象是個殘疾皇子河质,可洞房花燭夜當晚...
    茶點故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內(nèi)容