浅谈django的render函数的参数问题


Posted in Python onOctober 16, 2018

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 }}"。

一旦你创建一个 Template 对象,你可以用 context 来传递数据给它。 一个context 是一系列变量和它们值的集合。

context 在 Django 里表现为 Context 类,在 django.template 模块里。它的构造函数带有一个可选的参数: 一个字典映射变量和它们的值。 调用 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 来区分。 在框架中,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中定义的文件, 并通过浏览器渲染呈现.

参数讲解:

request: 是一个固定参数, 没什么好讲的。

template_name: templates 中定义的文件, 要注意路径名. 比如'templates\polls\index.html', 参数就要写‘polls\index.html'

context: 要传入文件中用于渲染呈现的数据, 默认是字典格式

content_type: 生成的文档要使用的MIME 类型。默认为DEFAULT_CONTENT_TYPE 设置的值。

status: http的响应代码,默认是200.

using: 用于加载模板使用的模板引擎的名称。

以上这篇浅谈django的render函数的参数问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的Flask框架中web表单的教程
Apr 20 Python
python获取本机mac地址和ip地址的方法
Apr 29 Python
python实用代码片段收集贴
Jun 03 Python
Python对数据库操作
Mar 28 Python
python 按不同维度求和,最值,均值的实例
Jun 28 Python
使用django-guardian实现django-admin的行级权限控制的方法
Oct 30 Python
Python二叉树的镜像转换实现方法示例
Mar 06 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
Apr 27 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
Aug 23 Python
python3 反射的四种基本方法解析
Aug 26 Python
使用scrapy ImagesPipeline爬取图片资源的示例代码
Sep 28 Python
Python OpenCV形态学运算示例详解
Apr 07 Python
django之跨表查询及添加记录的示例代码
Oct 16 #Python
python看某个模块的版本方法
Oct 16 #Python
对python中的 os.mkdir和os.mkdirs详解
Oct 16 #Python
详解Django的model查询操作与查询性能优化
Oct 16 #Python
python查看模块,对象的函数方法
Oct 16 #Python
Python中asyncio与aiohttp入门教程
Oct 16 #Python
python查看模块安装位置的方法
Oct 16 #Python
You might like
PHP 出现乱码和Sessions验证问题的解决方法!
2008/12/06 PHP
PHP5.4中json_encode中文转码的变化小结
2013/01/30 PHP
PHP数组与字符串互相转换实例
2020/05/05 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
Javascript 浮点运算的问题分析与解决方法
2013/08/27 Javascript
JS获取当前日期和时间的简单实例
2013/11/19 Javascript
JavaScript中document.forms[0]与getElementByName区别
2015/01/21 Javascript
jQuery知识点整理
2015/01/30 Javascript
asp.net+js实现金额格式化
2015/02/27 Javascript
js实现全国省份城市级联下拉菜单效果代码
2015/09/07 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
2015/09/16 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
2015/10/20 Javascript
Bootstrap 源代码分析(未完待续)
2016/08/17 Javascript
jQuery事件处理的特征(事件命名机制)
2016/08/23 Javascript
jQuery使用Layer弹出层插件闪退问题
2016/12/22 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
jQuery实现购物车的总价计算和总价传值功能
2018/11/28 jQuery
详解vue项目打包步骤
2019/03/29 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
[01:34]传奇从这开始 2016国际邀请赛中国区预选赛震撼开启
2016/06/26 DOTA
深入浅出学习python装饰器
2017/09/29 Python
Python基于pygame模块播放MP3的方法示例
2017/09/30 Python
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
Django模板导入母版继承和自定义返回Html片段过程解析
2019/09/18 Python
如何基于Python + requests实现发送HTTP请求
2020/01/13 Python
Python实现井字棋小游戏
2020/03/09 Python
python 监控服务器是否有人远程登录(详细思路+代码)
2020/12/18 Python
瑞典Happy Socks美国官网:购买色彩斑斓的快乐袜子
2016/10/19 全球购物
斯凯奇新西兰官网:SKECHERS新西兰
2018/02/22 全球购物
集体婚礼证婚词
2014/01/13 职场文书
陈胜吴广起义口号
2014/06/20 职场文书
买房协议书范本
2014/10/23 职场文书
2014年镇党建工作汇报材料
2014/11/02 职场文书
电台广播稿范文
2015/08/19 职场文书
pandas中pd.groupby()的用法详解
2022/06/16 Python