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 Trie树实现字典排序
Mar 28 Python
Django发送html邮件的方法
May 26 Python
python字符串的常用操作方法小结
May 21 Python
Python中类型检查的详细介绍
Feb 13 Python
Python结巴中文分词工具使用过程中遇到的问题及解决方法
Apr 15 Python
python web基础之加载静态文件实例
Mar 20 Python
Python机器学习算法库scikit-learn学习之决策树实现方法详解
Jul 04 Python
python找出因数与质因数的方法
Jul 25 Python
python2 中 unicode 和 str 之间的转换及与python3 str 的区别
Jul 25 Python
简单分析python的类变量、实例变量
Aug 23 Python
浅谈Python中re.match()和re.search()的使用及区别
Apr 14 Python
Python 如何批量更新已安装的库
May 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
破解.net程序(dll文件)编译和反编译方法
2013/01/31 PHP
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
使用PHP静态变量当缓存的方法
2013/11/13 PHP
PHP程序员常见的40个陋习,你中了几个?
2014/11/20 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
随鼠标上下滚动的jquery代码
2013/12/05 Javascript
JavaScript拆分字符串时产生空字符的解决方案
2014/09/26 Javascript
jQuery动态背景图片效果实现方法
2015/07/03 Javascript
JS基于FileSystemObject创建一个指定路径的TXT文本文件
2015/08/05 Javascript
JavaScript与java语言有什么不同
2016/09/22 Javascript
EditPlus 正则表达式 实战(3)
2016/12/15 Javascript
vue2.0使用Sortable.js实现的拖拽功能示例
2017/02/21 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
详解浏览器缓存和webpack缓存配置
2018/07/06 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
javascript设计模式 ? 原型模式原理与应用实例分析
2020/04/10 Javascript
使用js和canvas实现时钟效果
2020/09/08 Javascript
[28:57]EG vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/16 DOTA
[41:17]完美世界DOTA2联赛PWL S3 access vs CPG 第二场 12.13
2020/12/17 DOTA
python网页请求urllib2模块简单封装代码
2014/02/07 Python
Python 实现随机数详解及实例代码
2017/04/15 Python
Python 实现将numpy中的nan和inf,nan替换成对应的均值
2020/06/08 Python
纯css3实现效果超级炫的checkbox复选框和radio单选框
2014/09/01 HTML / CSS
享誉全球的多元化时尚精品购物平台:Farfetch发发奇(支持中文)
2017/08/08 全球购物
毕业生自我鉴定
2013/11/05 职场文书
影视艺术学院毕业生自荐信
2013/11/13 职场文书
房地产开盘策划方案
2014/02/10 职场文书
市委常委班子党的群众路线教育实践活动整改措施
2014/10/02 职场文书
给老师的一封感谢信
2015/01/20 职场文书
傅雷家书读书笔记
2015/06/29 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
2019暑假学生安全口号
2019/06/27 职场文书
python实现批量移动文件
2021/04/05 Python
html中显示特殊符号(附带特殊字符对应表)
2021/06/21 HTML / CSS
MySQL 原理优化之Group By的优化技巧
2022/08/14 MySQL