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 os模块中的isfile()和isdir()函数均返回false问题解决方法
Feb 04 Python
Pyhton中防止SQL注入的方法
Feb 05 Python
Python Web框架Flask中使用新浪SAE云存储实例
Feb 08 Python
Windows系统配置python脚本开机启动的3种方法分享
Mar 10 Python
Python实现微信公众平台自定义菜单实例
Mar 20 Python
在Python中实现贪婪排名算法的教程
Apr 17 Python
Python wxPython库使用wx.ListBox创建列表框示例
Sep 03 Python
Python异常的检测和处理方法
Oct 26 Python
Python3.5 + sklearn利用SVM自动识别字母验证码方法示例
May 10 Python
python函数与方法的区别总结
Jun 23 Python
python opencv 检测移动物体并截图保存实例
Mar 10 Python
pycharm远程连接服务器并配置python interpreter的方法
Dec 23 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
全国FM电台频率大全 - 10 江苏省
2020/03/11 无线电
PHP调用三种数据库的方法(3)
2006/10/09 PHP
PHP中一个控制字符串输出的函数
2006/10/09 PHP
php报表之jpgraph柱状图实例代码
2011/08/22 PHP
PHP mail()函数使用及配置方法
2014/01/14 PHP
php 批量添加多行文本框textarea一行一个
2014/06/03 PHP
PHP实现基于3DES算法加密解密字符串示例
2018/08/24 PHP
十个迅速提升JQuery性能让你的JQuery跑得更快
2012/12/10 Javascript
JS 加入收藏夹的代码(主流浏览器通用)
2013/05/13 Javascript
JavaScript 函数参数是传值(byVal)还是传址(byRef) 分享
2013/07/02 Javascript
在JavaScript中处理字符串之fontcolor()方法的使用
2015/06/08 Javascript
基于JavaScript判断浏览器到底是关闭还是刷新(超准确)
2016/02/01 Javascript
js select实现省市区联动选择
2020/04/17 Javascript
浅谈js函数的多种定义方法与区别
2016/11/29 Javascript
node.js学习之断言assert的使用示例
2017/09/28 Javascript
深入理解JS的事件绑定、事件流模型
2018/05/13 Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
2018/05/16 Javascript
vuex提交state&amp;&amp;实时监听state数据的改变方法
2018/09/16 Javascript
vue 循环加载数据并获取第一条记录的方法
2018/09/26 Javascript
js实现无限瀑布流实例方法
2019/09/16 Javascript
微信小程序后端实现授权登录
2020/02/24 Javascript
js实现简易计算器小功能
2020/11/18 Javascript
python使用win32com库播放mp3文件的方法
2015/05/30 Python
python3实现UDP协议的服务器和客户端
2017/06/14 Python
python 动态加载的实现方法
2017/12/22 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
2019/08/23 Python
tensorflow 2.1.0 安装与实战教程(CASIA FACE v5)
2020/06/30 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
2021/02/02 Python
火锅店创业计划书范文
2014/02/02 职场文书
运动会致辞稿50字
2014/02/04 职场文书
鲜花方阵解说词
2014/02/13 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
初中教师业务学习材料
2014/05/12 职场文书
分居协议书范本(律师见证版)
2014/11/26 职场文书
毕业生自荐材料范文
2014/12/30 职场文书
《全神贯注》教学反思
2016/02/22 职场文书