2

我的 Django 项目中的缩略图。它需要一个键值数据库,我的项目有redis。

我用redis配置了solr.thumbnails:

THUMBNAIL_DEBUG = True
THUMBNAIL_FORMAT = 'PNG'
THUMBNAIL_KVSTORE = 'sorl.thumbnail.kvstores.redis_kvstore.KVStore'
THUMBNAIL_REDIS_HOST = 'localhost'
THUMBNAIL_REDIS_PORT = 6379

后来我激活了 sorl.thubnails。我在我的静态文件夹中复制了一张静态图片,并将这张图片放入带有 sorl.thumbnails 代码的模板中:

{% load thumbnail %}
{% thumbnail "myimage.png" "100x110" crop="center" as im %}
    <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}

它在我项目根目录的 /cache 文件夹中创建具有正确尺寸的图像。此图像具有正确的新尺寸。

cache/c8/1a/c81a5dc6e63107dd2614b2b89d04d4c5.png 

Redis 控制台 MONITOR,与请求有一行

1380142932.884816 [0 127.0.0.1:38838] "GET" "sorl-thumbnail||image||789cd5e7c339366b2b99f45d1daf3101"

在 html 中,图像标签是正确的:

<img src="cache/c8/1a/c81a5dc6e63107dd2614b2b89d04d4c5.png" width="100" height="110">

但图像无法显示,django 控制台显示:GET /cache/c8/1a/c81a5dc6e63107dd2614b2b89d04d4c5.png HTTP/1.1" 404 1728

请帮帮我,怎么了?

4

1 回答 1

2

看起来 MEDIA_URL 丢失了。

尝试做src="{{MEDIA_URL}}{{ im.url }}"

于 2013-10-29T11:38:46.330 回答