Django Admin 后台实现图片缩略图显示
本文介绍如何在 Django Admin 后台模型列表中显示图片缩略图。通过定义自定义方法并配合 mark_safe 函数,可将图片 HTML 标签安全输出至列表页,同时设置 allow_tags 属性以正确渲染。该方法适用于需要直观查看文件上传状态的 Admin 配置场景。
Django Admin 图片缩略图实现
以下是具体的实现代码示例。
首先,需要定义一个名为 upload_img 的方法,用于生成并返回展示图片所需的 HTML 代码。
在定义该方法时,需设置 short_description 属性以指定列表头显示的名称,并设置 allow_tags 为 True,以允许 HTML 标签在列表中正常渲染。
此外,必须从 django.utils.safestring 模块中导入 mark_safe 方法,用于确保返回的 HTML 字符串被 Django 安全地标记为可信内容。
from django.utils.safestring import mark_safe
from django.contrib import admin
@admin.register(AliOSSFile)
class AliOssUploadAdmin(admin.ModelAdmin):
def upload_img(self, obj):
try:
img = mark_safe('<img src="%s" width="50px" />' % (obj.file.url,))
except Exception as e:
img = ''
return img
upload_img.short_description = 'Thumb'
upload_img.allow_tags = True
list_display = ['id', 'ali_id', 'file', 'upload_img', 'created_time']
readonly_fields = ['upload_img']
以上即为 Django 实现 Admin 后台显示图片缩略图的完整示例,供读者参考与借鉴。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









