Django模板系統(templates)

2022-09-15 11:30:15 字數 1521 閱讀 2690

模板語言

常用語法

兩種特殊符號 }、,變數相關用 },邏輯相關用

變數變數名由字母數字和下劃線組成

點(.)在模板語言中有特殊含義,用來獲取物件的相應屬性值

模板中支援的寫法:

}   }

}  }

內建filters

法:}default

}  如果value值沒傳的話就顯示nothing

length

}    返回value的長度,如value=[a,b,c,d]的話,就顯示4。(『|』左右兩邊沒有空格)

filesizeformat

將值格式化「乙個人類可讀」的檔案尺寸(例如,13kb,4.1m,202bytes等)

}  輸出117.7mb

slice  切片

}date  格式化

}safe

django的模板中會對html標籤和js等語法標籤進行自動轉義,原因是為了安全。但有時候我們不希望有一些html標籤被轉義,比如做乙個內容管理系統,後台新增的文章中是經過裝飾的

這些裝飾可能是通過乙個類似於fckedirtor編輯加註了html裝飾符的文字,如果自動轉義的話顯示的就是保護html標籤的原始檔。為了在django中關閉html的自動轉義有兩種方式,如果

是乙個單獨的變數我們可以通過過濾器「|safe」的方式告訴django這段**是安全的不必轉義。

truncatechars

如果字串字元多於指定的字元數量,那麼會被截斷。截斷的字串將以可翻譯的省略號系列(「...」)結尾

引數:截斷的字串

}自定義filter

自定義過濾器只是帶有乙個或兩個引數的python函式:

變數(輸入)的值——不一定是乙個字串

引數的值-這可以有乙個預設值,或者完全省略

for迴圈

for迴圈可用的一些引數

if語句支援and、or、==、>、=、in、not in、is、is not判斷

with

定義乙個中間變數

csrf_token

這個標籤用於跨站請求偽造保護

在頁面的form表單裡面寫上

注釋母版  我們通常會在母版中定義頁面專用的js塊、css塊,方便子頁面替換

繼承母版  在子頁面中在頁面最上方使用下面的語法來繼承母版

塊(block)

通過在母版中使用來定義「塊」

在子頁面中通過定義母版中的block名來對應替換母版中相應的內容

元件可以將常用的頁面內容如導航條,頁面資訊等元件儲存在單獨的檔案中,然後在需要使用的地方按如下語法匯入即可

靜態檔案相關

引用js檔案時使用:

某個檔案多處被用到可以存為乙個變數

使用get_static_prefix

inclution_tag多用於返回html**片段

Django模板系統

官方文件 只需要記兩種特殊符號 和 變數相關的用 邏輯相關的用。變數名由字母數字和下劃線組成。點 在模板語言中有特殊的含義,用來獲取物件的相應屬性值。幾個例子 view中 def template test request l 11,22,33 d class person object def i...

Django模板系統

如果在模板中需要解析變數使用 如果在模板中進行邏輯相關操作使用 注釋 單行注釋。在django的模板系統中變數使用的語法 當模版引擎遇到變數,就會用值替換掉變數。變數的命名可以是字母數字以及下劃線 的組合。變數名稱中不能有空格或標點符號。練習1 把html檔案中的 替換成 老王 html檔案 vie...

Django模板系統

匯入 template 和 context 類 from django.template import template,context def hello template request html 1.構建模板結構 template obj template html 2.建立渲染結構 cont...