Django 模板系統1(模板系統)

2021-09-19 13:51:20 字數 2104 閱讀 8340

1 模板系統(template):向頁面中填充內容

(1)模板系統常用符號} 和

a:如果在模板中需要解析變數使用}

b:如果在模板中進行邏輯相關操作使用

注釋 單行注釋

(2)變數

在django 的模板系統中變數使用的語法:}

當模板引擎遇到變數,就會用值替換掉變數。

變數的命名可以是字母數字以及下劃線("_")的組合

變數名稱中不能有空格或標點符號。

練習1 :將index 頁面中的}替換為張三

@@demo01.html 檔案		

@@views.py檔案

def demo01(request):

return render(request,'demo01.html',)

@@urls.py檔案

urlpatterns=[

path('admin/',admin.site.urls),

path('demo01/',views.demo01)

]

練習2:將頁面中的},},} 替換成具體的值

@@demo01.html 檔案		

@@views.py 檔案

def demo02(request):

name = '張三'

age = 19

height = 1.99

return render (request,'demo02.html',)

@@urls.py 檔案

urlpatterns=[

path('admin/',admin.site.urls),

path('demo02/',views.demo02)

]擴充套件:使用locals()內建函式,獲取全部區域性變數

def demo02(request):

name ='張三'

age = 19

height = 1.99

print(locals()) #

return render(request,'demo02.html',locals())

練習3:點(.)的特殊含義

點(.)在模板語言中有特殊的含義。當模版系統遇到點("."),它將以以下順序查詢:

(1)字典查詢 : 如果向頁面傳遞的是乙個字典型別變數,變數名.key 獲取值

(2)屬性或方法查詢: 如果傳遞乙個物件,變數名.變數名 (此變數名有可能是屬性,有可能是無引數方法名稱)。

(3)數字索引查詢: 如果傳遞乙個列表,變數名.索引。

@@views.py

def index02(request): """傳遞字典引數"""

data =

return render(request, 'index02.html', )

class person(object):

def __init__(self, name):

self.name = name

def dream(self):

return "{}的夢想是做一名老師".format(self.name)

def index03(request):

"""傳遞物件"""

person = person('張三')

return render(request, 'index02.html', )

def index04(request):

"""傳遞列表"""

lst = ['zs', 'ls', 'ww']

return render(request, 'index02.html', )

@@index02.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...