django 模版关闭转义方式


Posted in Python onMay 14, 2020

django 模版显示的html中出现'类似的ascii字符,这是由于django对单引号进行了转义,可以通过关闭转义解决html处理异常问题。

关闭django转义的方法有如下两种:

1.关闭单个模版变量的转义:

利用"|safe" 过滤器告诉django这个变量不需要转义, 如模版中:{{ data|sage }}

2.利用django模版标记关闭html或js块转义

{% autoescape off %}

code..

{% endautoescape %}

补充知识:Django使用mark_safe()和format_html()函数

django从view向template传递HTML字符串的时候,django默认不渲染此HTML,原因是为了防止这段字符串里面有恶意攻击的代码。

如果需要渲染这段字符串,需要在view里这样写:

from django.utils.safestring import mark_safe
 
def view(request):
  ....
  pageHtml = mark_safe("<a href='#'>首页</a>")
  ret =         
  {"equit_cate_list":list,"count":count,"ecform":ecform,"page":page,"pageHtml":pageHtml}
  return render(request, "list_equip_category.html",ret)

前端页面直接使用{{pageHtml}}即可。

mark_safe这个函数就是确认这段函数是安全的,不是恶意攻击的。

adminx中定义的一些插件等都是用mark_safe()进行渲染的。

django 模版关闭转义方式

format_html和mark_safe非常类似,本质还是调用mark_safe函数,不同在于传参方式,mark_safe直接传递完整的html字符串;

而format_html需要使用{}占位符:

format_html('<span style="color:{};">{}</span>', color_code, obj.approval)

以上这篇django 模版关闭转义方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Ubuntu下安装PyV8
Mar 13 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
Sep 24 Python
Selenium控制浏览器常见操作示例
Aug 13 Python
Django实现学生管理系统
Feb 26 Python
tensorflow 报错unitialized value的解决方法
Feb 06 Python
python GUI库图形界面开发之PyQt5滚动条控件QScrollBar详细使用方法与实例
Mar 06 Python
Python GUI编程学习笔记之tkinter界面布局显示详解
Mar 30 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
Jun 02 Python
使用Keras加载含有自定义层或函数的模型操作
Jun 10 Python
python编写softmax函数、交叉熵函数实例
Jun 11 Python
基于Python爬取51cto博客页面信息过程解析
Aug 25 Python
pandas将list数据拆分成行或列的实现
Dec 13 Python
Django表单提交后实现获取相同name的不同value值
May 14 #Python
django模板获取list中指定索引的值方式
May 14 #Python
Django admin管理工具TabularInline类用法详解
May 14 #Python
django创建超级用户时指定添加其它字段方式
May 14 #Python
简单了解python列表和元组的区别
May 14 #Python
Django 解决阿里云部署同步数据库报错的问题
May 14 #Python
Python参数传递实现过程及原理详解
May 14 #Python
You might like
计算2000年01月01日起到指定日的天数
2006/10/09 PHP
PHP XML备份Mysql数据库
2009/05/27 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
2011/11/02 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
Javascript &amp; DHTML 实例编程(教程)DOM基础和基本API
2007/06/02 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
2014/03/18 NodeJs
jQuery解析XML文件同时动态增加js文件的方法
2015/06/01 Javascript
JavaScript中的some()方法使用详解
2015/06/09 Javascript
JavaScript操作HTML元素和样式的方法详解
2015/10/21 Javascript
jquery插件jquery.confirm弹出确认消息
2015/12/22 Javascript
js调用webservice构造SOAP进行身份验证
2016/04/27 Javascript
react-router实现按需加载
2017/05/09 Javascript
10个经典的网页鼠标特效代码
2018/01/09 Javascript
jQuery常见的遍历DOM操作详解
2018/09/05 jQuery
vue实现form表单与table表格的数据关联功能示例
2019/01/29 Javascript
微信小程序常用简易小函数总结
2019/02/01 Javascript
微信小程序实现传递多个参数与事件处理
2019/08/12 Javascript
关于layui表单中按钮自动提交的解决方法
2019/09/09 Javascript
Vue开发中遇到的跨域问题及解决方法
2020/02/11 Javascript
[48:22]VGJ.S vs VG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:10:03]OG vs EG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python抓取百度首页的方法
2015/05/19 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
python 寻找优化使成本函数最小的最优解的方法
2017/12/28 Python
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
国际旅客访问北美最大的汽车租赁提供商:Alamo Rent A Car
2018/06/13 全球购物
大学生怎样进行自我评价
2013/12/07 职场文书
好习惯伴我成长演讲稿
2014/05/21 职场文书
喝酒驾驶检讨书
2014/10/01 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书
运动员入场前导词
2015/07/20 职场文书
2016年综治宣传月活动宣传标语口号
2016/03/16 职场文书
python四个坐标点对图片区域最小外接矩形进行裁剪
2021/06/04 Python