现在点击图片名称能跳转到图片,但是我想直接看到图片
models.py
from django.db import models
# Create your models here.
class Demo(models.Model):
session_key = models.CharField(max_length=40)
session_data = models.CharField(max_length=40)
expire_date = models.DateTimeField()
class Dog(models.Model):
name = models.CharField(max_length=15, verbose_name='小狗名字')
age = models.IntegerField(verbose_name='小狗年龄', default=0)
icon = models.ImageField(upload_to='images/', verbose_name='小狗头像')
admin.py
from .models import Demo, Dog
from django.utils.safestring import mark_safe
from import_export.admin import ImportExportModelAdmin
class DemoAdmin(admin.ModelAdmin):
list_display = ['id', 'session_key', 'session_data', 'expire_date']
class DogAdmin(ImportExportModelAdmin):
list_display = ['id', 'name', 'age', 'icon']
list_filter = ['name', 'age'] # 过滤器 页面搜索
list_per_page = 10
def img(self, obj):
div = f"<img src='{obj.icon.url}' width='50px' height='50px'>"
return mark_safe(div)
admin.site.register(Demo, DemoAdmin)
admin.site.register(Dog, DogAdmin)
目前是这样,点击图片能跳转,但是我想直接看到缩略图,而不是跳转过去
simpleui仅为系统默认模块提供了图标,如果要为其他模块指定图标,可以自定义配置。图标参考请查阅:图标说明
优先级: 自定义->系统配图->默认图标
注:simpleui 原则上不涉及代码,所以采用setting方式。后续可考虑扩展Model的 Meta class 进行配置图标
字段 | 说明 |
---|---|
name | 模块名字,请注意不是model的命名,而是菜单栏上显示的文本,因为model是可以重复的,会导致无法区分 |
icon | 图标 |
例子: |
SIMPLEUI_ICON = {
'系统管理': 'fab fa-apple',
'员工管理': 'fas fa-user-tie'
}
更改管理后台名称
# app/admin.py
admin.site.site_header = '小白龙冲冲冲' admin.site.site_title = '小白龙' admin.site.index_title = '3'
您好,关于使用django-simpleui显示缩略图的问题,需要进行以下操作:
from imagekit.models import ImageSpecField
from imagekit.processors import ResizeToFill
class MyModel(models.Model):
...
image = models.ImageField(upload_to='images')
image_thumbnail = ImageSpecField(source='image',
processors=[ResizeToFill(100, 100)],
format='JPEG',
options={'quality': 60})
...
class MyModelAdmin(admin.ModelAdmin):
list_display = ('id', 'name', 'image_thumbnail')
{% load easy_thumbnails %}
{% thumbnail object.image_thumbnail "100x100" crop="center" as im %}
<img src="{{ im.url }}" alt="{{ object.name }}">
{% endthumbnail %}
这样就可以实现在页面上显示缩略图了。
希望能对您有所帮助。