我正在尝试将 sorl-thumbnail 集成到现有项目中以在 django 管理中显示 ImageField 照片的缩略图,但没有结果。
我使用安装了 sorl
pip install sorl-thumbnail
然后添加
'sorl.thumbnails'
到settings.py
然后运行manage.py syncdb,然后设置admin.py
from django.contrib import admin
from myapp.models import MyModel
from sorl.thumbnail.admin import AdminImageMixin
class MyModelAdmin(AdminImageMixin, admin.ModelAdmin):
pass
尽管在查看 MyModel 的列表或查看每个单独的 MyModel
我做错了什么?
nb:我使用 South 进行迁移,使用 S3 为我的应用程序存储静态图像
请您参考如下方法:
AdminImageMixin 仅当 ImageField 是 sorl-thumbnail's ImageField 的实例时才更改它的小部件。所以你的模型需要使用以下内容:
from sorl.thumbnail import ImageField
class MyModel(models.Model):
some_image = ImageField(...)
代替 django.db.models.ImageField。
如果你这样做了,缩略图的 img 标签应该被添加到管理源中的字段旁边,如果它实际上在源中,这可能是一个问题将文件存储在 S3 上,并且 sorl-thumbnail 使用的 URL 不匹配。
