即使allow_tags = True,Django Admin也会显示转义的HTML

时间:2013-05-10 18:00:00

标签: python django python-2.7 django-admin

我有以下代码用于模型和管理员。问题列包含HTML内容,例如URL和图像标记。但是,管理员仍然显示原始HTML内容而不是格式化内容。模型和管理代码如下:

模型

class question(models.Model):
    question_id = models.AutoField(primary_key=True) # Unique ID
    question = models.TextField() # HTML Content for the question

管理

class QuestionAdmin(admin.ModelAdmin):
    list_display = ('question_id','formatqn')
    list_per_page = 10 

    def formatqn(self, obj):
        return u'%s' % obj.question
        formatqn.allow_tags = True

admin.site.register(question, QuestionAdmin)

1 个答案:

答案 0 :(得分:10)

那是你的代码吗?返回后,formatqn.allow_tags=True方法内部有def formatqn缩进,因此它永远不会执行,尝试使用这样的方式编写模型:

class QuestionAdmin(admin.ModelAdmin):
    list_display = ('question_id','formatqn')
    list_per_page = 10 

    def formatqn(self, obj):
        return u'%s' % obj.question

    # this line unindented
    formatqn.allow_tags = True

admin.site.register(question, QuestionAdmin)

希望它有所帮助!