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删除过期文件的方法
May 29 Python
Python进阶_关于命名空间与作用域(详解)
May 29 Python
Python3中使用PyMongo的方法详解
Jul 28 Python
Python 在字符串中加入变量的实例讲解
May 02 Python
为什么你还不懂得怎么使用Python协程
May 13 Python
在SQLite-Python中实现返回、查询中文字段的方法
Jul 17 Python
PyTorch中的padding(边缘填充)操作方式
Jan 03 Python
快速查找Python安装路径方法
Feb 06 Python
Django 自定义404 500等错误页面的实现
Mar 08 Python
Python如何使用正则表达式爬取京东商品信息
Jun 01 Python
python 标准库原理与用法详解之os.path篇
Oct 24 Python
Python实现提取PDF简历信息并存入Excel
Apr 02 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
ASP和PHP都是可以删除自身的
2007/04/09 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
PHP SESSION的增加、删除、修改、查看操作
2015/03/20 PHP
PHP+Ajax实时自动检测是否联网的方法
2015/07/01 PHP
JavaScript TO HTML 转换
2006/06/26 Javascript
Jquery操作Select 简单方便 一个js插件搞定
2009/11/12 Javascript
麻雀虽小五脏俱全 Dojo自定义控件应用
2010/09/04 Javascript
jQuery验证元素是否为空的两种常用方法
2015/03/17 Javascript
JavaScript中创建字典对象(dictionary)实例
2015/03/31 Javascript
JavaScript替换当前页面的方法
2015/04/03 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
使用JavaScript判断手机浏览器是横屏还是竖屏问题
2016/08/02 Javascript
jquery移除了live()、die(),新版事件绑定on()、off()的方法
2016/10/26 Javascript
基于JQuery及AJAX实现名人名言随机生成器
2017/02/10 Javascript
微信小程序 共用变量值的实现
2017/07/12 Javascript
详解Node项目部署到云服务器上
2017/07/12 Javascript
JavaScript数组排序reverse()和sort()方法详解
2017/12/24 Javascript
layui实现点击按钮给table添加一行
2018/08/10 Javascript
Element UI 自定义正则表达式验证方法
2018/09/04 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
2020/04/21 Javascript
[02:01]2018完美盛典-开场舞《双子星》
2018/12/16 DOTA
Python实现删除Android工程中的冗余字符串
2015/01/19 Python
python实现搜索指定目录下文件及文件内搜索指定关键词的方法
2015/06/28 Python
python爬取各类文档方法归类汇总
2018/03/22 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
jupyter修改文件名方式(TensorFlow)
2020/04/21 Python
Pytorch通过保存为ONNX模型转TensorRT5的实现
2020/05/25 Python
css实例教程 一款纯css3实现的超炫动画背画特效
2014/11/05 HTML / CSS
Ariat英国官网:为世界顶级马术运动员制造最优质的鞋类和服装
2020/02/14 全球购物
会计专业推荐信
2013/10/29 职场文书
童装店创业计划书
2014/01/09 职场文书
伊索寓言教学反思
2014/05/01 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
教你使用TensorFlow2识别验证码
2021/06/11 Python
SQL Server2019数据库备份与还原脚本,数据库可批量备份
2021/11/20 SQL Server
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL