Python Django框架模板渲染功能示例
阿新 • • 發佈:2020-01-08
本文例項講述了Python Django框架模板渲染功能。分享給大家供大家參考,具體如下:
專案名/settings.py(專案配置,配置模板檔案的路徑):
import os # 專案目錄的絕對路徑 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR,'templates')],# 設定模板檔案目錄(templates資料夾 需要手動建立) 'APP_DIRS': True,'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},]
應用名/views.py(檢視,使用模板的詳細步驟):
from django.http import HttpResponse from django.template import loader,RequestContext # 定義檢視函式 (必須傳遞HttpRequest引數) (需要在urls.py中配置路由) def index(request): # 1.獲取模板 template = loader.get_template('應用名/index.html') # 需要在settings.py中配置模板目錄 # 2.定義上下文 (分配的模板變數) context = RequestContext(request,{'title':'圖書列表','list':range(10)}) # 3.渲染模板並返回 (生成html內容) return HttpResponse(template.render(context))
應用名/views.py(檢視,使用模板的簡單寫法,render):
from django.shortcuts import render # 匯入render # 檢視函式 def index(request): context = {'title':'圖書列表','list':list(range(1,10))} # 字典,分配給模板的變數 return render(request,'應用名/index.html',context) # render對模板的使用步驟進行了封裝。 第三個引數可以省略不寫
templates/應用名/index.html(模板檔案,需要手動建立,settings.py中配置模板路徑):
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>模板檔案</title> </head> <body> <h1>這是一個模板檔案</h1> 使用模板變數:<br/> {{ title }}<br/> 使用列表:<br/> {{ list }}<br/> for迴圈:<br/> <ul> {% for i in list %} <li>{{ i }}</li> {% endfor %} </ul> </body> </html>
模板變數使用:{{ 模板變數名 }}
模板程式碼段:{% 程式碼段 %}
for迴圈:
{% for i in list %} {% empty %} 如果遍歷的list是空列表,就會顯示該內容。 {% endfor %}
模板檔案的載入(查詢)順序:
希望本文所述對大家基於Django框架的Python程式設計有所幫助。