淺談django的render函數(shù)的參數(shù)問題
hello.html 文件代碼如下:
HelloWorld/templates/hello.html 文件代碼:
<h1>{{ hello }}</h1>
HelloWorld/HelloWorld/view.py 文件代碼:
# -*- coding: utf-8 -*-
#from django.http import HttpResponse
from django.shortcuts import render
def hello(request):
context = {}
context['hello'] = 'Hello World!'
return render(request, 'hello.html', context)
ontext 字典中元素的鍵值 "hello" 對應了模板中的變量 "{{ hello }}"。
一旦你創(chuàng)建一個 Template 對象,你可以用 context 來傳遞數(shù)據(jù)給它。 一個context 是一系列變量和它們值的集合。
context 在 Django 里表現(xiàn)為 Context 類,在 django.template 模塊里。它的構造函數(shù)帶有一個可選的參數(shù): 一個字典映射變量和它們的值。 調用 Template 對象 的 render() 方法并傳遞 context 來填充模板:
>>> from django.template import Context, Template
>>> t = Template('My name is {{ name }}.')
>>> c = Context({'name': 'nowamagic'})
>>> t.render(c)
u'My name is nowamagic.'
我們必須指出的一點是,t.render(c) 返回的值是一個 Unicode 對象,不是普通的 Python 字符串。 你可以通過字符串前的 u 來區(qū)分。 在框架中,Django 會一直使用 Unicode 對象而不是普通的字符串。 如果你明白這樣做給你帶來了多大便利的話,盡可能地感激 Django 在幕后有條不紊地為你所做這這么多工作吧。 如果不明白你從中獲益了什么,別擔心。你只需要知道 Django 對 Unicode 的支持,將讓你的應用程序輕松地處理各式各樣的字符集,而不僅僅是基本的A-Z英文字符。
from django.shortcuts import render
help文檔中描述如下:
render(request, template_name, context=None, content_type=None, status=None, using=None)
Returns a HttpResponse whose content is filled with the result of calling django.template.loader.render_to_string() with the passed arguments.
此方法的作用---結合一個給定的模板和一個給定的上下文字典,并返回一個渲染后的 HttpResponse 對象。
通俗的講就是把context的內容, 加載進templates中定義的文件, 并通過瀏覽器渲染呈現(xiàn).
參數(shù)講解:
request: 是一個固定參數(shù), 沒什么好講的。
template_name: templates 中定義的文件, 要注意路徑名. 比如'templates\polls\index.html', 參數(shù)就要寫‘polls\index.html'
context: 要傳入文件中用于渲染呈現(xiàn)的數(shù)據(jù), 默認是字典格式
content_type: 生成的文檔要使用的MIME 類型。默認為DEFAULT_CONTENT_TYPE 設置的值。
status: http的響應代碼,默認是200.
using: 用于加載模板使用的模板引擎的名稱。
以上這篇淺談django的render函數(shù)的參數(shù)問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
使用Python中PDB模塊中的命令來調試Python代碼的教程
這篇文章主要介紹了使用Python中PDB模塊中的命令來調試Python代碼的教程,包括設置斷點來修改代碼等、對于Python團隊項目工作有一定幫助,需要的朋友可以參考下2015-03-03
PyTorch上實現(xiàn)卷積神經(jīng)網(wǎng)絡CNN的方法
本篇文章主要介紹了PyTorch上實現(xiàn)卷積神經(jīng)網(wǎng)絡CNN的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04
Django提示mysql版本過低:django.db.utils.NotSupportedError: My
這篇文章主要介紹了Django提示mysql版本過低:django.db.utils.NotSupportedError: MySQL 8 or later is required (found 5.7.26).的解決方法,文中有詳細的解決方案,具有一定的參考價值,需要的朋友可以參考下2024-03-03

