1. 程式人生 > >django 模板關閉特殊字符轉化

django 模板關閉特殊字符轉化

value 輸出 關閉 val port sel list max 對象

默認情況下,在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)

django 模板關閉特殊字符轉化