Django 实现admin后台显示图片缩略图的例子

直接上代码

定义一个upload_img来返回显示图片的html

定义显示图片说明和allow_tags

mark_safe方法于django.utils.safestring导入

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后台显示图片缩略图的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Django后台admin的使用详解

    简述: Django的admin可以提供一个强大的后台管理功能,可以在web界面对数据库进行操作,我们需要修改admin.py将要操作的数据表注册到后台管理中 创建数据表: 为了便于演示,我们在models.py中创建一张img数据表规则 图中 verbo_name 是在admin界面显示表字段的名称,定义的class Meta中的verbo_name是在admin界面显示的表名 修改admin.py文件 from django.contrib import admin from app1 im

  • 在django admin中添加自定义视图的例子

    django admin提供了完善的用户管理和数据模型管理,方便实用.研究了一下在admin里面添加自己的页面. 在admin.py里继承django.contrib.admin.ModelAdmin基类 class FaceAdmin(admin.ModelAdmin): 然后在里面写自己的视图处理函数.基类里面的save_model和delete_model函数可以做数据对象的新建和删除的预处理和后处理.自建的函数如果要redirect到自己建的view,反向映射要包含admin:,写成 r

  • django上传图片并生成缩略图方法示例

    django 处理上传图片生成缩略图首先要注意form标签上必须有enctype="multipart/form-data"属性,另外要装好PIL库, 然后就很简单了,如下是实例代码: upload.html <div id="uploader"> <form id="upload" enctype="multipart/form-data" action="/ajax/upload/"

  • Django 实现admin后台显示图片缩略图的例子

    直接上代码 定义一个upload_img来返回显示图片的html 定义显示图片说明和allow_tags mark_safe方法于django.utils.safestring导入 from django.utils.safestring import mark_safe from django.contrib import admin @admin.register(AliOSSFile) class AliOssUploadAdmin(admin.ModelAdmin): def uploa

  • 把django中admin后台界面的英文修改为中文显示的方法

    创建一个django工程,我使用的django 1.8.2,创建工程后,settings.py中设置中文显示支持定义 LANGUAGE_CODE = 'en-us'#改为zh-Hans 如果改为zh-cn则会报错 报错提示 django IOError: No translation files found for default language zh-cn 即找不到zh-cn对应的本地化文件.一般而言,zh-cn编码对应的本地化文件夹为zh_CN,我去django的安装目录查找zh_CN,结

  • Django在admin后台集成TinyMCE富文本编辑器的例子

    Django原生的TextField并不友好,集成TinyMCE富文本编辑器 Django版本:1.11.5 TinyMCE版本:4.6.7 第一步:从官网下载TinyMCE https://www.tinymce.com/download/ 注意下载的是下面那个开发包,Dev Package.此包包含TinyMCE社区,开发工具和完整的源代码. 第二步:把压缩包内tinymce目录内的所有文件和文件夹复制到Django项目中static目录内: 第三步:编辑 admin.py 文件: from

  • Django 设置admin后台表和App(应用)为中文名的操作方法

    设置表名为中文 1.设置Models.py文件 class Post(models.Model): name = models.CharField() --省略其他字段信息 class Meta: verbose_name = "文章" # 单数形式显示的字段 verbose_name_plural = verbose_name # 复数形式显示字段,默认admin后台显示复数形式 重启服务,访问admin后台,就能看到中文名字了,如下图: 设置App(应用)为中文 1. 修改要修改的

  • 基于Django的Admin后台实现定制简单监控页

    我们使用Django的Admin二次定制一个图形化界面,首先我们把语言设置为中文简体. 修改: settings.py LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' 修改: apps.py from django.apps import AppConfig class MywebConfig(AppConfig): name = 'MyWeb' verbose_name = "服务器参数收集" 接着我们来定义models.p

  • Django {{ MEDIA_URL }}无法显示图片的解决方式

    django模板使用media文件夹,想要在前端通过{{ MEDIA_URL }}无法显示图片,没有取到Media_url的值 解决办法: TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')] , 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [

  • Django怎么在admin后台注册数据库表

    django在admin后台注册自己创建的数据库表,这样我们就可以在admin后台看到表结构信息,我们就可以在admin后台快速录入表记录信息 如果没有注册,那么你在登录django自带的admin的后台,就看不到我们创建的表结构 登陆django的admin的后台会出现以下界面 这个时候需要把自己创建的数据表也注册到admin中,这个时候就需要在数据表对应的app中找到admin.py文件 加入以下代码: from .models import UserProfile class UserPr

  • Django实现后台上传并显示图片功能

    1.安装pillow pip install Pillow 2.创建app python manage.py startapp upload 3. project设定 settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'dj

  • Django实现前台上传并显示图片功能

    1. 前台 templates/upload/upload.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="/myupload/upload/" method=

  • django之静态文件 django 2.0 在网页中显示图片的例子

    小白,有错的地方,希望大家指正~ 使用的是django2.0 python3.6 1.首先,要在settings.py中设置 MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR,'media/') 2.url.py中,在加入 from django.conf.urls.static import static from . import settings urlpatterns = [ path('admin/', admin.sit

随机推荐