假如我們有以下模板index.html,**為:
doctype html
>
<
html
lang
="en"
>
<
head
>
<
meta
charset
="utf-8"
>
<
title
>title
title
>
head
>
<
body
>
<
div>網頁公共頭部部分
div>
<
h2> 網頁body部分
h2>
<
div>網頁公共底部部分
div>
body
>
html
>
做過web開發的童鞋知道大部分網頁的公共頭部,公共底部部分**每個頁面都一樣,那麼就應該將其單獨拿出做為乙個html, 這樣修改這部分**時候,不需要每個頁面都修改, 所以在django中我們可以這麼做:
top.html
<div>網頁公共頭部部分
div>
bottom.html
<div>網頁公共底部部分
div>
index.html
doctype html
>
<
html
lang
="en"
>
<
head
>
<
meta
charset
="utf-8"
>
<
title
>title
title
>
head
>
<
body
>
<
h2> 網頁body部分
h2>
body
>
html
>
我們可以使用django模板引擎的include語法,來將單獨的頁面包含到當前模板頁面中。有同學有疑問,那我們通過檢視傳遞給模板的上下文,在被包含的模板中可以使用嗎?可以直接使用。
假如我們有如下檢視:
defindex(request):
return render(request, '
index.html
', )
該django的檢視函式,傳遞給模板並渲染模板。
top.html修改如下:
<div>網頁公共頭部部分:}
div>
這麼使用是沒有問題的。
我這裡有這樣的乙個問題,假如所有的頁面都使用共同的頭部top.html, 可能針對1.html 2.html 3.html所使用的頭部有些樣式不一樣,所需top.html:
<div
classs
='acss'
>網頁公共頭部部分
div>
但是對於5.html, 6.html使用的頭部樣式為:
<div
class
='bcss'
>網頁公共頭部部分
div>
很顯然,如果直接通過include方式包含公共頭部,會導致一些頁面顯示問題。既然部分引數不一樣,include允許我們傳遞引數給被include的模板,我們可以使用with語法,那麼問題解決如下:
}
top.html可修改如下:
<div
class
='}'
>網頁公共頭部部分
div>
被包含模板中部分引數,由我們include的時候動態指定,那麼top.html就不會因為細微差別而編寫多份**了。
Django之模板語法
第一種 return render request,index.html 第二種 return render request,index.html locals 將當前所在的命名空間中的名字全部傳遞給前端頁面python所有資料型別都可以傳 傳函式名 傳過來會自動加括號呼叫,顯示返回值。傳物件 物件...
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...