zoukankan      html  css  js  c++  java
  • django 模板关闭特殊字符转化

        默认情况下,在django admin管理界面和页面中,如果输出的对象中包含HTML特殊字符,在django中默认的处理方式是将对象中的HTML特殊字符转化,例如会将 "<" 转化为 "&lt;"  等等。

    HTML解决问题的办法:

        如果在渲染模板时,想要输出HTML特殊字符,在模板页使用  {% autoescape off %}{{不需要特殊字符转换的字符串}}{% endautoescape %} 来关闭:

    示例:

    {% autoescape off %}
    
        {{ unescape_value }} 
    
    {% endautoescape %}

    在django admin管理界面列表中,输出HTML特殊字符示例:

    models.py:
    ##################
    
    from django.db import models
    
    class Person(models.Model):
        first_name = models.CharField(max_length=50)
        last_name = models.CharField(max_length=50)
        color_code = models.CharField(max_length=6)
    
        def colored_name(self):
            return '<span style="color: #%s;">%s %s</span>' % (self.color_code, self.first_name, self.last_name)
    
        colored_name.allow_tags = True
    
    
    
    admin.py:
    ##################
    
    from django.contrib import admin
    from . import models
    
    
    class PersonAdmin(admin.ModelAdmin):
        list_display = ('first_name', 'last_name', 'colored_name')
    
    admin.site.register(models.Person, PersonAdmin)
  • 相关阅读:
    JAVA使用POI如何导出百万级别数据
    Excel最多可存多少行,多少列?
    jvm参数调优
    迭代器相应型别
    指向NULL的类
    const T & 的适用范围
    函数前修饰const与函数名后修饰const
    继承中赋值函数的注意点
    string类的简要实现
    malloc/free与new/delete的不同及注意点
  • 原文地址:https://www.cnblogs.com/linkenpark/p/7667737.html
Copyright © 2011-2022 走看看