Django之模板語法

2021-09-24 09:25:18 字數 2775 閱讀 2675

# 第一種

return render(request,

'index.html',)

# 第二種

return render(request,

'index.html'

,locals()

)# 將當前所在的命名空間中的名字全部傳遞給前端頁面

python所有資料型別都可以傳

傳函式名——傳過來會自動加括號呼叫,顯示返回值。

傳物件——物件記憶體位址,等於後端print物件,可通過點方法獲取屬性或呼叫方法

模板語法不能傳參,若函式或方法有引數,不能使用

前端獲取後端傳過來的容器型別的內部元素,通過句點符..數字,數字就是索引,字典就是用.key

也可點各個資料型別的內建方法(不需要傳參的)

模板語法的注釋不會展示到前端頁面:

原生html注釋會展示到前端:

這裡的展示到前端是指檢查前端**時是否可見。

語法:},前面的值會當做第乙個引數傳遞給|後面的函式

統計字串或列表長度:length

傳入的值是空則返回default後面預設引數:default:

'傳值為空'

將數字格式化成表示檔案大小的單位:filesizeformat

格式化時間(不要加百分號):date:

'y-m-d'

切片:slice

:'0:8:2'

擷取固定的長度的字串,三個點也算:truncatechars:長度

按照空格擷取文字內容:truncatewords:空格數

給數字加乙個值,如果第乙個引數是字串,會預設全轉成字串進行拼接:add

取消轉義:預設不會識別標籤語法,防止危險攻擊。取消轉義後能識別

前端 safe

後端 from django.utils.safestring import mark_safe

x = mark_safe(

'')

# for迴圈

}<

/p>

}<

/p>

# if判斷

flag不為空<

/p>

flag是空<

/p>

# 巢狀使用

這是我的第一次<

/p>

這是最後一次了啊<

/p>

嗨起來!!!<

/p>

# empty

當你的for迴圈物件為空的時候會自動走empty**塊兒的內容

後端:l =

none

前端:這是我的第一次<

/p>

這是最後一次了啊<

/p>

嗨起來!!!<

/p>

你給我的容器型別是個空啊,沒法for迴圈<

/p>

在應用名下新建乙個名為templatetags資料夾(必須叫這個名字)

在該新建的資料夾內新建乙個任意名稱的py檔案

在該py檔案中需要固}定寫下面兩句**

在前端頁面

from django import template

register = template.library(

)

# 後端

@register.

filter

(name=

'xbb'

)def

index

(a,b)

:return a+b

# 前端

}

# 後端

@register.******_tag

defplus

(a,b,c)

:return a+b+c

# 前端

# 自定義inclusion_tag

@register.inclusion_tag(

'login.html'

,name=

'login'

)def

login

(n):

l =['第%s項'

%i for i in

range

(n)]

return

# login.html

}<

/li>

<

/ul>

# 呼叫

首先需要在被繼承的模板中劃分多個區域		

通常情況下乙個模板中應該至少有三塊

頁面css**塊

頁面js**塊

頁面主體內容

子板繼承模板

先繼承模板所有的內容

然後根據block塊的名字修改指定區域的內容

修改

模板的匯入:將一段html當做模組的方式匯入到另乙個html展示

# 第一種方式

rel=

'stylesheet'

href=""

>

# 第二種方式

rel=

'stylesheet'

href

="css/mycss.css"

>

django模板語法之include

假如我們有以下模板index.html,為 doctype html html lang en head meta charset utf 8 title title title head body div 網頁公共頭部部分 div h2 網頁body部分 h2 div 網頁公共底部部分 div b...

django 模板語法

顯示的資料必須是後端view.py傳輸的資料 名字 1.普通輸出 2.for 迴圈 3.if 判斷 forloop.counter 索引從 1 開始算 forloop.counter0 索引從 0 開始算 forloop.revcounter 索引從最大長度到 1 forloop.revcounte...

Django 模板語法

1.模板語法的操作 1 後端檢視處理函式中,傳遞資料給前端網頁,將資料報含在字典中進行傳遞 2 前端網頁中展示資料 展示變數中的資料 判斷條件 展示的 迴圈遍歷 遍歷的 2.提交資料 http1.1標準提供了8種請求方式 網頁發起的請求,向伺服器請求 get,post,put,deletr,head...