Django筆記 模板Templates

2021-08-19 14:28:25 字數 3546 閱讀 1561

django模板語言,簡寫dtl,定義在django.template包中

由startproject命令生成的settings.py定義關於模板的值:

常用方式:在專案的根目錄下建立templates目錄,設定dirs值

dirs=[os.path

.join(base_dir,"templates")]

模板處理
loader.get_template(template_name),返回乙個template物件
template物件的render(requestcontext)方法,使用context渲染模板
from django.template import loader, requestcontext

快捷函式
from django.shortcuts import render

defindex

(request):

return render(request, 'temtest/index.html')

變數

}

在模板中呼叫物件的方法
from django.db import models

class

heroinfo

(models.model):

...def

showname

(self):

return self.hname

from django.shortcuts import render

from models import *

defindex

(request):

hero = heroinfo(hname='abc')

context =

return render(request, 'temtest/detail.html', context)

}

標籤

for標籤

迴圈邏輯

}表示當前是第幾次迴圈

給出的列表為或列表不存在時,執行此處

邏輯1邏輯2

邏輯3

多行注釋

過濾器
if list1|length > 1
name|lower|upper
list

|join:", "

value|default:"什麼也沒有"
value|date:'y-m-d'
注釋
bar #}
這裡可以定義預設值

如果不定義預設值,則表示空字串

實際填充內容

說明
區域內容

1.建立根級模板

水果超市title>

head>

top--

}bottom

body>

html>

2.建立分支模版
商品

使用者中心

color='blue'>user leftfont>

首頁內容

3.為具體頁面建立模板,繼承自分支模板
商品正文列表

使用者密碼修改

4.檢視呼叫具體頁面,並傳遞模板中需要的資料
logo='welcome to itcast'

defindex

(request):

return render(request, 'temtest/index.html', )

def

goodslist

(request):

return render(request, 'temtest/goodslist.html', )

def

userpwd

(request):

return render(request, 'temtest/userpwd.html', )

5.配置url
from django.conf.urls import url

from . import views

urlpatterns = [

url(r'^$', views.index, name='index'),

url(r'^list/$', views.goodslist, name='list'),

url(r'^pwd/$', views.userpwd, name='pwd'),

]

檢視**:

defindex

(request):

return render(request, 'temtest/index2.html',

)模板**:

}

會被自動轉義的字元

< 會轉換為<

> 會轉換為》

' (單引號) 會轉換為'

" (雙引號)會轉換為 "

& 會轉換為 &

}

關閉轉義
}

}

字串字面值
}
}

Django模板筆記

有些模版 是重複的。因此可以單獨抽取出來,以後 需要用到,就直接使用include進來就可以了。如果想要在include子模版的時候,傳遞一些引數,那麼可以使用with 的形式。示例 如下 在前端頁面開發中。有些 是需要重複使用的。這種情況可以使用include標籤來實現。也可以使用另外乙個比較強大...

Django 模板筆記

變數 檢視傳遞給模板的資料,要遵循識別符號規則 語法 注意 如果變數不存在,則插入的是空字串 在模板中使用點語法 1 字典 2 屬性或者方法 3 數字索引 在模板中呼叫物件中的方法,不能傳遞引數 語法 作用 1 在輸出中建立文字 2 控制邏輯或者迴圈 格式 語句 語句語句2 格式 語句語句2 注意 ...

Django學習筆記 模板

簡單點來說,無外乎就是從前端得到資料,資料在後端處理,將資料返回給前端。這裡就不說如何獲取前端資料了。之前的demo中有一種 return httpresponse u 接收這個請求後,返回的資料 但是這種基本是用不到了,正常的做法是url中的name屬性和view中render。當然也可能使用js...