微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Django-admin列表展示上传图片

1.在models.py文件中创建表ImageField类型字段

 class user(models.Model):
     img = models.ImageField(upload_to=‘static/upload/‘)  # 创建一个图像字段,upload_to设置图片保存地址

2.在admin.py 

from django.utils.safestring import mark_safe#导入make_safe
# Register your models here.
class userAdmin(admin.ModelAdmin):
list_display = (‘username‘,‘email‘,‘image_data‘)
#readonly_fields = (‘image_data‘,) # 必须加这行 否则访问编辑页面会报错
search_fields = (‘username‘,‘email‘)
# 创建一个自定义方法
def image_data(self,obj):
#使用mark_safe返回内容,否则页面将以html实体展示输出结果
return mark_safe(‘<img src="/%s" width="50px">‘%(obj.img))#src紧跟/ 表示根目录

admin.site.register(models.user,userAdmin)

3.在settings.py设置静态文件

 STATIC_URL = ‘/static/‘
 
 STATICFILES_Dirs=[
     os.path.join(BASE_DIR,‘static‘)
 ]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐