1

我已经使用 Redis 在模板中启动并运行了 sorl-thumbnail 来存储缩略图。好东西!!但是,我想在我的管理员中有缩略图。我使用了文档中的示例(见下文),但没有运气。

from gallery.models import Photo
from django.contrib import admin
from sorl.thumbnail.admin import AdminImageMixin

class PhotoAdmin(AdminImageMixin, admin.ModelAdmin):
    pass

admin.site.register(Photo, PhotoAdmin)

我究竟做错了什么?

4

2 回答 2

1

我做了一些非常相似的事情,它对我有用。但是,我使用了一种稍微不同的方法,而是从我的站点库中的 utils/admin.py 导入我的管理员,从而​​允许在我的模型之间轻松继承其他应用程序,例如 django-reversion、django-guardian 和 django-markitup。

画廊/admin.py:

#from django.contrib import admin
from utils import admin
from gallery.models import Photo

class PhotoAdmin(admin.ModelAdmin):
    #your customizations

admin.site.register(Photo,PhotoAdmin)

实用程序/admin.py:

from django.contrib.admin import *
from django.db import models
from sorl.thumbnail.admin import AdminImageMixin

class ModelAdmin(AdminImageMixin, ModelAdmin):
    pass
于 2011-09-25T20:04:29.350 回答
0

您的模型的 ImageFields 需要是 sorl 的 ImageField ( from sorl.thumbnail.fields import ImageField) 而不是标准的 django.db.models.ImageField。

该字段是一个插入式替换,因此只需更新它就可以解决问题,或者至少它对我有用。如果您使用 South 进行数据库迁移,请注意它会为此生成一个,这很好。

于 2013-04-16T16:55:04.453 回答