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 相关文章推荐
使用PyCharm配合部署Python的Django框架的配置纪实
Nov 19 Python
深入解析Python编程中super关键字的用法
Jun 24 Python
python pandas dataframe 按列或者按行合并的方法
Apr 12 Python
python机器人运动范围问题的解答
Apr 29 Python
python 判断文件还是文件夹的简单实例
Jun 10 Python
详解用python计算阶乘的几种方法
Aug 14 Python
pygame实现俄罗斯方块游戏(对战篇1)
Oct 29 Python
Python concurrent.futures模块使用实例
Dec 24 Python
jupyter note 实现将数据保存为word
Apr 14 Python
python 代码实现k-means聚类分析的思路(不使用现成聚类库)
Jun 01 Python
Python使用pyenv实现多环境管理
Feb 05 Python
python opencv检测直线 cv2.HoughLinesP的实现
Jun 18 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
PHP的FTP学习(四)
2006/10/09 PHP
追求程序速度,而不是编程的速度
2008/04/23 PHP
PHP缓存技术的多种方法小结
2012/08/14 PHP
解析php开发中的中文编码问题
2013/08/08 PHP
PHP实现对站点内容外部链接的过滤方法
2014/09/10 PHP
PHP常用处理静态操作类
2015/04/03 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
php操纵mysqli数据库的实现方法
2016/09/18 PHP
JavaScript delete操作符应用实例
2009/01/13 Javascript
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
javascript创建和存储cookie示例
2014/01/07 Javascript
jQuery修改li下的样式以及li下的img的src的值的方法
2014/11/02 Javascript
JS+CSS实现感应鼠标渐变显示DIV层的方法
2015/02/20 Javascript
JS+CSS实现简易的滑动门效果代码
2015/09/24 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
jQuery实现将div中滚动条滚动到指定位置的方法
2016/08/10 Javascript
巧用Javascript的逻辑运算符
2016/12/02 Javascript
jquery easyui dataGrid动态改变排序字段名的方法
2017/03/02 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
js实现翻牌小游戏
2020/07/31 Javascript
jquery实现加载更多&quot;转圈圈&quot;效果(示例代码)
2020/11/09 jQuery
[47:03]完美世界DOTA2联赛PWL S3 access vs LBZS 第一场 12.20
2020/12/23 DOTA
Python之自动获取公网IP的实例讲解
2017/10/01 Python
神经网络(BP)算法Python实现及应用
2018/04/16 Python
python如何实现视频转代码视频
2019/06/17 Python
J2EE模式面试题
2016/10/11 面试题
大学生找工作推荐信范文
2013/11/28 职场文书
课外科技活动总结
2014/08/27 职场文书
捐助倡议书
2015/01/19 职场文书
委托函范文
2015/01/29 职场文书
工作保证书怎么写
2015/02/28 职场文书
《平行四边形的面积》教学反思
2016/02/16 职场文书
2016年感恩教师节活动总结
2016/04/01 职场文书
创业计划书之淘宝网店
2019/10/08 职场文书
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
2021/05/17 Python
正确使用MySQL update语句
2021/05/26 MySQL