Django框架中render_to_response()函数的使用方法


Posted in Python onJuly 16, 2015

通常的情况是,我们一般会载入一个模板文件,然后用 Context渲染它,最后返回这个处理好的HttpResponse对象给用户。 我们已经优化了方案,使用 get_template() 方法代替繁杂的用代码来处理模板及其路径的工作。 但这仍然需要一定量的时间来敲出这些简化的代码。 这是一个普遍存在的重复苦力劳动。Django为此提供了一个捷径,让你一次性地载入某个模板文件,渲染它,然后将此作为 HttpResponse返回。

该捷径就是位于 django.shortcuts 模块中名为 render_to_response() 的函数。大多数情况下,你会使用``\ ``````对象,除非你的老板以代码行数来衡量你的工作。

System Message: WARNING/2 (<string>, line 1736); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 1736); backlink

Inline literal start-string without end-string.

System Message: WARNING/2 (<string>, line 1736); backlink

Inline literal start-string without end-string.

下面就是使用 render_to_response() 重新编写过的 current_datetime 范例。

from django.shortcuts import render_to_response
import datetime

def current_datetime(request):
 now = datetime.datetime.now()
 return render_to_response('current_datetime.html', {'current_date': now})

大变样了! 让我们逐句看看代码发生的变化:

    我们不再需要导入 get_template 、 Template 、 Context 和 HttpResponse 。相反,我们导入 django.shortcuts.render_to_response 。 import datetime 继续保留.

    在 current_datetime 函数中,我们仍然进行 now 计算,但模板加载、上下文创建、模板解析和 HttpResponse 创建工作均在对 render_to_response() 的调用中完成了。 由于 render_to_response() 返回 HttpResponse 对象,因此我们仅需在视图中 return 该值。

render_to_response() 的第一个参数必须是要使用的模板名称。 如果要给定第二个参数,那么该参数必须是为该模板创建 Context 时所使用的字典。 如果不提供第二个参数, render_to_response() 使用一个空字典。

Python 相关文章推荐
Python实现过滤单个Android程序日志脚本分享
Jan 16 Python
python求解水仙花数的方法
May 11 Python
python获取一组数据里最大值max函数用法实例
May 26 Python
基于Python的XSS测试工具XSStrike使用方法
Jul 29 Python
Python基于FTP模块实现ftp文件上传操作示例
Apr 23 Python
python 日志增量抓取实现方法
Apr 28 Python
pytorch加载自定义网络权重的实现
Jan 07 Python
关于win10在tensorflow的安装及在pycharm中运行步骤详解
Mar 16 Python
解决Jupyter NoteBook输出的图表太小看不清问题
Apr 16 Python
python实现图像外边界跟踪操作
Jul 13 Python
Pandas中DataFrame交换列顺序的方法实现
Dec 14 Python
Python爬虫之爬取哔哩哔哩热门视频排行榜
Apr 28 Python
在Python的Django框架中加载模版的方法
Jul 16 #Python
Django框架下在视图中使用模版的方法
Jul 16 #Python
详解Django中的过滤器
Jul 16 #Python
在Python的Django框架中为代码添加注释的方法
Jul 16 #Python
详解Django中的ifequal和ifnotequal标签使用
Jul 16 #Python
Python实现数通设备端口使用情况监控实例
Jul 15 #Python
Python实现快速多线程ping的方法
Jul 15 #Python
You might like
千呼万唤始出来,DOTA2勇士令状不朽宝藏Ⅱ现已推出
2020/08/25 DOTA
php设计模式 Facade(外观模式)
2011/06/26 PHP
php启动时候提示PHP startup的解决方法
2013/05/07 PHP
php中file_exists函数使用详解
2015/05/08 PHP
javascript应用:Iframe自适应其加载的内容高度
2007/04/10 Javascript
jQuery获得内容和属性方法及示例
2013/12/02 Javascript
jQuery页面加载初始化常用的三种方法
2014/06/04 Javascript
详解addEventListener的三个参数之useCapture
2015/03/16 Javascript
JavaScript返回0-1之间随机数的方法
2015/04/06 Javascript
JavaScript动态检验密码强度的实现方法
2016/11/09 Javascript
JS中append字符串包含onclick无效传递参数失败的解决方案
2016/12/26 Javascript
JS操作xml对象转换为Json对象示例
2017/03/25 Javascript
详解JavaScript对象的深浅复制
2017/03/30 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
jQuery实现的页面弹幕效果【测试可用】
2018/08/17 jQuery
微信小程序实现留言板
2018/10/31 Javascript
微信小程序之导航滑块视图容器功能的实现代码(简单两步)
2020/06/19 Javascript
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
[00:31]DOTA2荣耀之路7:Miracle-空血无敌斩
2018/05/31 DOTA
跟老齐学Python之大话题小函数(2)
2014/10/10 Python
python机器学习实战之最近邻kNN分类器
2017/12/20 Python
详解opencv中画圆circle函数和椭圆ellipse函数
2019/12/27 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
2020/03/10 Python
Python如何操作office实现自动化及win32com.client的运用
2020/04/01 Python
python图片验证码识别最新模块muggle_ocr的示例代码
2020/07/03 Python
纽约著名的服装辅料来源:M&J Trimming
2017/07/26 全球购物
英国在线电子和小工具商店:TecoBuy
2018/10/06 全球购物
PHP如何设置和取得Cookie值
2015/06/30 面试题
英文版区域经理求职信
2013/10/23 职场文书
军训自我鉴定200字
2014/02/13 职场文书
加多宝凉茶广告词
2014/03/18 职场文书
五年级上册复习计划
2015/01/19 职场文书
幼儿园六一儿童节演讲稿
2015/03/19 职场文书
2015年业务员工作总结范文
2015/04/07 职场文书
导游词之天下银坑景区
2019/11/21 职场文书