【发布时间】:2023-04-08 04:48:01
【问题描述】:
我正在使用缩略图来显示图像预览。但是,thumbnail 无法创建缓存文件夹,mysql 数据库中的 thumbnail_kvstore 始终为空。
这是我的代码: 在settings.py中:
INSTALLED_APPS = (
...
'sorl.thumbnail',
)
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/').replace('\\','/')
MEDIA_URL = '/media/'
在 urls.py 中:
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
在models.py中:
from sorl.thumbnail import ImageField
class Image(models.Model):
file = models.ImageField(upload_to="images")
user = models.ForeignKey(User)
在模板中:
{% thumbnail image "100x100" crop="center" as im %}
<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}
缩略图生成的im.url看起来像“/media/cache/6f/9d/6f9dc8d01bf2a23448525d0902a63cd6.jpg”
但是,在 media/ 下没有生成缓存文件夹,我的图像存储在 media/images 中。 mysql 数据库中的 thumbnail_kvstore 表也是空的。
我见过几个类似的问题(Question1 或Question2)。似乎 MEDIA_ROOT 或 MEDIA_URL 配置不正确。有人可以帮我吗?
【问题讨论】:
-
您是否尝试过这里提到的解决方案? stackoverflow.com/questions/6312344/…
-
我不认为这是我的问题。我设置了 THUMBNAIL_DEBUG=True 但我没有收到任何错误。
标签: django sorl-thumbnail