3

我正在使用 sorl-thumbnail 来裁剪一些图像。

我有一个看起来像这样的模型

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}}'>,图像在浏览器中显示良好。我的 INSTALLED_APPS 中也有 sorl-thumbnail,我同步了数据库并设置了 thumbnail_kvstore 表。

有人能帮助我吗。什么可能导致图像无法裁剪甚至显示?

4

2 回答 2

3

您的代码看起来不错,所以问题应该来自其他部分。

您可以做的第一件事是设置并THUMBNAIL_DEBUG = True查看settings.py错误发生的原因。

您正在使用virualenvPIL图像库吗?确保您PIL已编译和安装jpegpng/gif支持需要libjpegzlib.

编辑:正如@DanielRoseman 在评论中指出的那样,你实际上是在使用django.db.models.ImageField,改变

image = models.ImageField(upload_to="uploads")

image = ImageField(upload_to="uploads")

改为使用sorl.thumbnail.ImageField

于 2012-04-08T23:56:13.677 回答
0

尝试进行清理,或者如果失败,请清除。文档

当我得到意外的输出时,这解决了我的问题。也许它会为你工作。

于 2012-04-09T02:14:05.317 回答