django输出html内容的实例


Posted in Python onMay 27, 2018

最近在学习django,于是就用django做了一个简单的网站,用来练手,具体功能就是从网上抓取数据,然后放到我的网站上面,但是遇到一个问题就是django无法输出html格式的内容,只能以字符串的形式输出:

data = '<h1>hello world</h1>'
<p>{{ data }}</p>

我们目的是输出的是:

hello world

但是结果输出的是:

<h1>hello world</h1>

在网上搜了好久,终于找到解决办法:

对于单个变量使用django的过滤器,告诉Django这个字符串不用进行HTML转义,方法如下:

data | safe

对于一段模板内容可以使用autoescape标签,比如:

{% autoescape off %}
 {{ data }}
{% endautoescape %}

off 的意思是关闭对html的转义,而将off替换成on就表示进行html转义,默认进行html转义

注意:autoescape 具备继承性的,如果在父模版中定义了,则在子模版对应内容部分也存在此属性

我们可能会疑问,django为什么要将这些字符转义,而不是按原本html的内容输出呢?

我们举个例子:

需要用户输入用户名来注册,这个用户输入了用户名为:

<script type="text/javascript">alert('hello');</script>

假设他输入的长度合法,而且django也确实没显式提供什么特殊字符转换方法,那么每次在网页上面显示的时候,岂不是每次都弹出一个窗口,那么不是就很不安全啦。

为了解决这个问题,django默认将所有特殊的字符都转换成在html上面可以显示的内容,而不再包含转义功能!于是,也就出现了上面我想输出而输出而输出不了html的内容。

以上这篇django输出html内容的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现霍夫圆和椭圆变换代码详解
Jan 12 Python
Python实现修改IE注册表功能示例
May 10 Python
Python 中字符串拼接的多种方法
Jul 30 Python
python获取时间及时间格式转换问题实例代码详解
Dec 06 Python
详解Django+uwsgi+Nginx上线最佳实战
Mar 14 Python
记录Python脚本的运行日志的方法
Jun 05 Python
PyQt5响应回车事件的方法
Jun 25 Python
python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+JS)
Mar 18 Python
浅谈Python中re.match()和re.search()的使用及区别
Apr 14 Python
Opencv求取连通区域重心实例
Jun 04 Python
Python 合并拼接字符串的方法
Jul 28 Python
Python plt 利用subplot 实现在一张画布同时画多张图
Feb 26 Python
Python中判断输入是否为数字的实现代码
May 26 #Python
用PyInstaller把Python代码打包成单个独立的exe可执行文件
May 26 #Python
使用PyInstaller将python转成可执行文件exe笔记
May 26 #Python
Python带动态参数功能的sqlite工具类
May 26 #Python
通过Py2exe将自己的python程序打包成.exe/.app的方法
May 26 #Python
python学习笔记--将python源文件打包成exe文件(pyinstaller)
May 26 #Python
Python多重继承的方法解析执行顺序实例分析
May 26 #Python
You might like
php smarty截取中文字符乱码问题?gb2312/utf-8
2011/11/07 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
2018/06/13 PHP
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
javascript cookie操作类的实现代码小结附使用方法
2010/06/02 Javascript
jquery加载页面的方法(页面加载完成就执行)
2011/06/21 Javascript
extjs关于treePanel+chekBox全部选中以及清空选中问题探讨
2013/04/02 Javascript
javascript写的异步加载js文件函数(支持数组传参)
2014/06/07 Javascript
node.js中的fs.ftruncate方法使用说明
2014/12/15 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
原生javascript实现图片滚动、延时加载功能
2015/01/12 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用
2016/05/12 Javascript
微信小程序 form组件详解及简单实例
2017/01/10 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
解决angularjs service中依赖注入$scope报错的问题
2018/10/02 Javascript
在vue中实现清除echarts上次保留的数据(亲测有效)
2020/09/09 Javascript
python中enumerate的用法实例解析
2014/08/18 Python
Pycharm学习教程(6) Pycharm作为Vim编辑器使用
2017/05/03 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
python在新的图片窗口显示图片(图像)的方法
2019/07/11 Python
python实现二分类的卡方分箱示例
2019/11/22 Python
python3 tkinter实现添加图片和文本
2019/11/26 Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
2020/01/25 Python
Django 博客实现简单的全文搜索的示例代码
2020/02/17 Python
无需压缩软件,用python帮你操作压缩包
2020/08/17 Python
利用Python如何画一颗心、小人发射爱心
2021/02/21 Python
斯凯奇澳大利亚官网:SKECHERS澳大利亚
2018/03/31 全球购物
Fox Racing英国官网:越野摩托车和山地自行车服装
2020/02/26 全球购物
类的返射机制中的包及核心类
2016/09/12 面试题
就业推荐自我鉴定
2013/10/06 职场文书
普通党员个人对照检查材料
2014/09/18 职场文书
工伤死亡理赔协议书
2014/10/20 职场文书
2014年中职班主任工作总结
2014/12/16 职场文书
观看建国大业观后感
2015/06/01 职场文书
公司借款担保书
2015/09/22 职场文书
dubbo服务整合zipkin详解
2021/07/26 Java/Android