Django框架模板文件使用及模板文件加載順序分析
本文實(shí)例講述了Django框架模板文件使用及模板文件加載順序。分享給大家供大家參考,具體如下:
模板功能
產(chǎn)生html,控制頁(yè)面上產(chǎn)生的內(nèi)容。模板文件不僅僅是一個(gè)html文件。
模板文件包含兩部分內(nèi)容:
1.靜態(tài)文件:css,js,html
2.動(dòng)態(tài)內(nèi)容:用于動(dòng)態(tài)的去產(chǎn)生一些網(wǎng)頁(yè)內(nèi)容,通過(guò)模板語(yǔ)言產(chǎn)生
模板文件的使用
通常是在視圖函數(shù)中使用模板產(chǎn)生html內(nèi)容返回給客戶端
a,加載模板文件 loader.get_template
獲取模板文件的內(nèi)容,產(chǎn)生一個(gè)模板對(duì)象
b,定義模板上下文 RequestContext
給模板文件傳遞數(shù)據(jù)
c,模板文件渲染產(chǎn)生的html頁(yè)面內(nèi)容 render
用傳遞的數(shù)據(jù)替換相應(yīng)的變量,產(chǎn)生一個(gè)替換后的表中html內(nèi)容
from django.shortcuts import render from django.template import loader,RequestContext from django.http import HttpResponse # Create your views here. def my_render(request,template_path,context={}): # 1.加載模板文件,獲取一個(gè)模板對(duì)象 temp = loader.get_template(template_path) # 2.定義模板上下文,給模板傳遞數(shù)據(jù) context = RequestContext(request, context) # 3.模板渲染,產(chǎn)生一個(gè)替換后的html內(nèi)容 res_html = temp.render(context) # 4.返回應(yīng)答 return HttpResponse(res_html) # /index def index(request): # return my_render(request,'booktest/index.html') 這是自己封裝的render # 其實(shí)Django已經(jīng)封裝好了,可以直接使用 return render(request,'booktest/index.html')
模板文件的加載順序
1.首先去配置的模板目錄下找模板文件
2.去INSTALL_APPS下面的每個(gè)應(yīng)用去找模板文件,前提是應(yīng)用中必須有templates文件夾
希望本文所述對(duì)大家基于Django框架的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
python刪除文件夾中具有相同后綴類型文件的實(shí)戰(zhàn)演練
在平時(shí)卸載軟件的時(shí)候會(huì)殘留許多文件和空文件夾,下面這篇文章主要給大家介紹了關(guān)于python刪除文件夾中具有相同后綴類型文件的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03Python基于pandas爬取網(wǎng)頁(yè)表格數(shù)據(jù)
這篇文章主要介紹了Python基于pandas獲取網(wǎng)頁(yè)表格數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05Python 非極大值抑制(NMS)的四種實(shí)現(xiàn)詳解
本文主要介紹了非極大值抑制(Non-Maximum Suppression,NMS)的四種實(shí)現(xiàn)方式,不同方法對(duì)NMS速度的影響各不相同,感興趣的小伙伴可以了解一下2021-11-11Python @property原理解析和用法實(shí)例
這篇文章主要介紹了Python @property原理解析和用法實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02