Django Sorl缩略图错误url';s
我按照说明设置了sorl缩略图,但是当我尝试在我的应用程序中使用templatetags时,没有图像出现 该url似乎无效,但尚不清楚需要哪些额外配置 生成如下图像:Django Sorl缩略图错误url';s,django,sorl-thumbnail,Django,Sorl Thumbnail,我按照说明设置了sorl缩略图,但是当我尝试在我的应用程序中使用templatetags时,没有图像出现 该url似乎无效,但尚不清楚需要哪些额外配置 生成如下图像: <img src="cache/e5/25/e5253a328b9130ecd7d820893f44b0e6.jpg" width="100" height="100"> 下面是settings.py中的相关行: INSTALLED_APPS = ( 'django.contrib.auth', 'd
<img src="cache/e5/25/e5253a328b9130ecd7d820893f44b0e6.jpg" width="100" height="100">
下面是settings.py中的相关行:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
'mysite.myapp',
'sorl.thumbnail',
)
CACHES = {
# 'default': {
# 'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
# 'LOCATION': 'cache',
# }
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
# Examples: "http://media.lawrence.com", "http://example.com/media/"
MEDIA_URL = ''
# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
# trailing slash.
# Examples: "http://foo.com/media/", "/media/".
ADMIN_MEDIA_PREFIX = '/media/'
这是我的模板中的代码:
{% thumbnail auction.item.image "100x100" crop="center" as im %}
<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}
{%thumbnail auction.item.image“100x100”crop=“center”as im%}
{%endthumbnail%}
图像肯定是被上传的(我检查了upload_to中指定的目录),当我使用文件系统缓存时,它们被存储在相对于我的应用程序的目录缓存中。我将其更改为使用memcache,以查看是否有帮助。您需要正确配置媒体URL。ImageFile的备份基本上只是来自底层存储后端的传递。对于开箱即用的Django,需要为文件字段生成URL 您拥有的:“+”缓存/e5/25/e5253a328b9130ecd7d820893f44b0e6.jpg'
所需内容:'/media/'+'cache/e5/25/e5253a328b9130ecd7d820893f44b0e6.jpg' 注意:您需要确保MEDIA_URL被别名/映射到Django将文件上载到的任何目录(MEDIA_ROOT) -----编辑--
请参阅以下指向默认Django存储后端源的链接。
您的媒体URL和媒体根目录设置是否正确?您是否可以查看正常图像(即非缩略图)?尚未设置媒体根目录和媒体URL。我没有任何静态图像。sorl缩略图不从缓存访问图像吗?我目前已将其配置为使用memcache。如果我将媒体URL配置为仅从媒体URL/缓存直接提供文件。。。根据我上面链接的sorl缩略图文档,ImageFile.url属性是使用存储后端计算的。Django默认存储后端使用媒体URL。因此,如果您正在使用该后端,则需要设置媒体URL。谢谢,这就是问题所在。我也在我的url中添加了“media/”。您可能应该使用“django.core.context_processors.media”模板上下文处理器,并在模板中使用{media_url}}而不是硬编码。他没有硬编码任何内容,带有缓存url的img标记是由Sorl缩略图基于。。。是的,媒体网址
{% thumbnail auction.item.image "100x100" crop="center" as im %}
<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}