好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 詳解Django中 render() 函數的使用方法

詳解Django中 render() 函數的使用方法

熱門標簽:南京銷售外呼系統軟件 地圖標注微信發送位置不顯示 地圖制圖標注位置改變是移位嗎 房產電銷外呼系統 浙江電銷卡外呼系統好用嗎 315電話機器人廣告 蓋州市地圖標注 地圖標注的意義點 上海機器人外呼系統哪家好

render() 函數

在講 render() 函數之前,我們在 Django 項目 index 文件夾的 urls.py 和 views.py 中編寫如下功能代碼:(不難,望讀者細心閱之)

# index的 urls.py
from django.urls import path
form . import views

urlpatterns = [
    # 定義首頁的路由
    path(' ', views.index, name='index'),
]
# index的views.py
from django.http import HttpResponse
def index(request):
    html = 'h1> Hello World /h1>'
    return HttpResponse(html, status=200)

視圖函數 index 使用響應類 HttpResponse 實現響應過程。從 HttpResponse 的參數可知,第一個參數是響應內容,一般是網頁內容或 JSON 數據,網頁內容是以HTML語言為主的,JSON數據用于生成API接口數據。第二個參數用于設置HTTP狀態碼,它支持HTTP所有的狀態碼。

從源碼角度分析,打開響應類 HttpResponse 的源碼文件,發現 Django內置的響應類(本人在上篇文章中已講過)都是在 HttpResponse 的基礎上實現的,只不過它們的HTTP狀態碼有所不同,如圖下所示。

從 HttpResponse 的使用過程可知,如果要生成網頁內容,就需要將 HTML 語言以 字符串的形式表示,如果網頁內容過大,就會增加視圖函數的代碼量,同時也沒有體現模板的作用,因此Django在此基礎上進行了封裝處理,定義了函數 render 和 redirect。
render()語法如下:

render(request, template_name, context=None, content_type=None, status=None, using=None)

render 的參數 request 和 template name 是必需參數,其余的參數是可選參數。各個參數說明如下。

  • request:瀏覽器向服務器發送的請求對象,包含用戶信息、請求內容和請求方式等。
  • template_name:設重模板文件名,用于生成網頁內容。
  • context:對模板上下文(模板變量)賦值,以字典格式表示,默認情況下是一個空字典。
  • content_type:響應內容的數據格式,一般情況下使用默認值即可。
  • status:HTTP狀態碼,默認為200。
  • using:設置模板引擎,用于解析模板文件,生成網頁內容。

為了更好地說明 render 的使用方法,我們通過簡單的例子來加以說明。在Django項目的index文件中的 views.py 和 templates 的 index.html 中編寫以下代碼:

# index的 views.py
from django.shortcuts import render
def index(request):
    value = {'title': 'Hello Django'}
    return render(request, 'index.html', context=value)
# templates 的 index.html
!DOCTYPE html>
html>
  body>
    h3> {{ title }} /h3>
  /body>
/html>

視圖函數 index 定義的變量 value 作為 render 的參數 context,而模板 index.html 里通過使用模板上下文(模板變量){{ title }} 來獲取變量 value 的數據,上下文的命名必須與變量 value 的數據命名(字典的key)相同,這樣 Django 內置的模板引擎才能將參數context(變量value)的數據與模板上下文進行配對,從而將參數 context 的數據轉換成網頁內容。運行Django項目,在瀏覽器上訪問127.0.0.1:8000即可看到網頁信息,如圖下所示。

希望以上內容能夠幫助到各位!

到此這篇關于Django中 render() 函數的使用方法的文章就介紹到這了,更多相關Django中 render() 函數內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 對django中render()與render_to_response()的區別詳解
  • 淺談django的render函數的參數問題
  • Django框架中render_to_response()函數的使用方法

標簽:克拉瑪依 日照 陽泉 雙鴨山 金華 臨汾 貴州 赤峰

巨人網絡通訊聲明:本文標題《詳解Django中 render() 函數的使用方法》,本文關鍵詞  詳解,Django,中,render,函數,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解Django中 render() 函數的使用方法》相關的同類信息!
  • 本頁收集關于詳解Django中 render() 函數的使用方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 日本2和搜子同屋的日子2016| 色婷婷精品久久二区二区蜜臂av| 程仪把脸埋进秀婷两腿| 小荡货腿张开让我cao动态图| 久久久久99精品国产片| se色综合视频| 免费的黄色片| 蜜桃成熟时33d高清三级| 性色AV久久99园产来青品小说| 特黄特色大片免费视频大全| 美国黄色录像| 激情影院a| 亚洲精品秘?一区二区三区影院忠贞 | 337p人体粉嫩胞高清| 特黄女一级毛片| 共妻一女多男h| 囯产极品美女高潮无套久久久麻豆| black强行japanesehd| 羞耻在线观看| 老师裸露胸免费视频网站| 91精品国产综合久久久蜜臀价格| 凹凸国产精品熟女嫩草影视| 欧洲艳妇电影| 3dmax漫画入口| 女学护士一级毛片XXXX| 国内精品久久久久久久小说| 男女动态无遮挡动态图免费看| 60岁肥岳太胖| 9久9久女女视频精品6| 乱公和我做爽死我视频免费| 欧美精品免费xxxxx视频| 扒开神里绫华白嫩的屁股漫画| 99插插| 18禁高潮娇喘出水长时间视频| 一本一道久久a久久精品逆3p| 欧美专区在线视频| 国模冰冰和摄影师啪啪| 她在丈夫面被耍了bd高清在线观看| 一级A片黄女人高潮网站| 一一级毛片| 亚洲福利小视频|