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实现颜色rgb和hex相互转换的函数
Mar 19 Python
使用Python的Scrapy框架十分钟爬取美女图
Dec 26 Python
python3操作mysql数据库的方法
Jun 23 Python
Python2.7下安装Scrapy框架步骤教程
Dec 22 Python
Python实现调用另一个路径下py文件中的函数方法总结
Jun 07 Python
Python异常处理例题整理
Jul 07 Python
Python中低维数组填充高维数组的实现
Dec 02 Python
python实现猜拳游戏
Mar 04 Python
Python如何实现FTP功能
May 28 Python
python爬取音频下载的示例代码
Oct 19 Python
基于python爬取链家二手房信息代码示例
Oct 21 Python
python利用文件时间批量重命名照片和视频
Feb 09 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简单判断手机设备的方法
2016/08/23 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
Javascript 获取LI里的内容
2008/12/17 Javascript
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
js继承的实现代码
2010/08/05 Javascript
浅析JavaScript中的delete运算符
2013/11/30 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
JavaScript中的函数重载深入理解
2014/08/04 Javascript
JavaScript中匿名、命名函数的性能测试
2014/09/04 Javascript
浅谈jQuery中的事件
2015/03/23 Javascript
jQuery实现企业网站横幅焦点图切换功能实例
2015/04/30 Javascript
JavaScript实现带标题的图片轮播特效
2015/05/20 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
Javascript 创建类并动态添加属性及方法的简单实现
2016/10/20 Javascript
微信小程序 scroll-view组件实现列表页实例代码
2016/12/14 Javascript
vue下拉列表功能实例代码
2018/04/08 Javascript
如何使用50行javaScript代码实现简单版的call,apply,bind
2019/08/14 Javascript
在Vue.js中使用TypeScript的方法
2020/03/19 Javascript
JavaScript缓动动画函数的封装方法
2020/11/25 Javascript
Python制作Windows系统服务
2017/03/25 Python
Python实现感知器模型、两层神经网络
2017/12/19 Python
在PyCharm中实现关闭一个死循环程序的方法
2018/11/29 Python
基于python的Paxos算法实现
2019/07/03 Python
python中用logging实现日志滚动和过期日志删除功能
2019/08/20 Python
Python中断多重循环的思路总结
2019/10/04 Python
Python 使用type来定义类的实现
2019/11/19 Python
CSS3实现各种图形的示例代码
2016/10/19 HTML / CSS
C#实现启动一个进程
2016/10/01 面试题
国旗下的演讲稿
2014/05/08 职场文书
汽车销售经理岗位职责
2014/06/09 职场文书
人事行政专员岗位职责
2014/07/23 职场文书
中级会计大学生职业生涯规划书
2014/09/16 职场文书
地道战观后感400字
2015/06/04 职场文书
公开致歉信
2019/06/24 职场文书
Python基础之元类详解
2021/04/29 Python
美元符号 $
2022/02/17 杂记