我正在使用sorl缩略图来裁剪一些图像。
我有一个这样的模型
from django.db import models
from sorl.thumbnail import ImageField
class Photo(models.Model):
image = models.ImageField(upload_to="uploads")
在我的模板里
{% load thumbnail %}
{% thumbnail photo.image "200x100" as im %}
<img src="{{ im.url }}">
{% endthumbnail %}
这不会输出任何内容。如果我这样做
<img src='{{photo.image.url}}'>
图像在浏览器中显示良好。我在安装的应用程序中也有sorl缩略图,我同步了数据库并设置了thumbnail-kvstore表。有人能帮帮我吗。是什么原因导致图像不被裁剪,甚至无法显示?
最佳答案
你的代码看起来不错,所以问题应该来自其他部分。
首先,您可以在THUMBNAIL_DEBUG = True
中设置settings.py
,并查看错误发生的原因。
您是否使用virualenv
和PIL
作为图像库?确保您的PIL
已编译并安装了需要jpeg
和png/gif
支持的libjpeg
和zlib
支持。
编辑:正如@DanielRoseman在评论中指出的,您实际上正在使用django.db.models.ImageField
,更改
image = models.ImageField(upload_to="uploads")
到
image = ImageField(upload_to="uploads")
改为使用
sorl.thumbnail.ImageField
。关于python - sorl-thumbnail的模板标签什么都不做,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10067415/