django 模版关闭转义方式

 更新时间:2020年05月14日 11:39:09   作者:youbo_sun  
这篇文章主要介绍了django 模版关闭转义方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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()进行渲染的。

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

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

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

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

相关文章

  • python编程开发之textwrap文本样式处理技巧

    python编程开发之textwrap文本样式处理技巧

    这篇文章主要介绍了python编程开发之textwrap文本样式处理技巧,实例分析了Python中textwrap的常用方法与处理文本样式的相关使用技巧,需要的朋友可以参考下
    2015-11-11
  • 详解Python读取yaml文件多层菜单

    详解Python读取yaml文件多层菜单

    这篇文章主要介绍了Python读取yaml文件多层菜单,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • windows支持哪个版本的python

    windows支持哪个版本的python

    在本篇文章中小编给大家分享了关于windows支持python的版本的相关内容知识点,需要的朋友们可以学习下。
    2020-07-07
  • 教你使用Python建立任意层数的深度神经网络

    教你使用Python建立任意层数的深度神经网络

    这篇文章主要介绍了Python建立任意层数的深度神经网络,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • mac下如何将python2.7改为python3

    mac下如何将python2.7改为python3

    这篇文章主要介绍了mac下如何将python2.7改为python3,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-07-07
  • Python3 replace()函数使用方法

    Python3 replace()函数使用方法

    这篇文章主要介绍了Python3 replace()函数使用方法,需要的朋友可以参考下
    2018-03-03
  • 基于Python实现自动抠图小程序

    基于Python实现自动抠图小程序

    这篇文章主要为了大家利用用Python制作一款界面化的抠图小程序,文中的示例代码讲解详细,对我们学习Python有一定的帮助,感兴趣的可以学习一下
    2022-01-01
  • django中ORM模型常用的字段的使用方法

    django中ORM模型常用的字段的使用方法

    这篇文章主要介绍了django中ORM模型常用的字段的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 浅谈keras 的抽象后端(from keras import backend as K)

    浅谈keras 的抽象后端(from keras import backend as K)

    这篇文章主要介绍了浅谈keras 的抽象后端(from keras import backend as K),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python 无限级分类树状结构生成算法的实现

    Python 无限级分类树状结构生成算法的实现

    这篇文章主要介绍了Python 无限级分类树状结构生成算法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01

最新评论