【问题标题】:Django: sorl-thumbnailDjango:sorl-thumbnail
【发布时间】:2012-01-17 08:05:04
【问题描述】:

这是我的代码

{% thumbnail  ham.thumbnail_url "50x20" crop="center" as im %}
   <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}    

这就是 img src 输出的样子

cache/81/a8/81a884b2bce95dfe60e7397ea15d10f2.jpg

即使这个例子来自docs

 {% thumbnail "http://www.aino.se/media/i/logo.png" "40x40" crop="80% top" as im %}
 <img src="{{ im.url }}">
 {% endthumbnail %}

怎么了?

更新

{% thumbnail  ham.thumbnail_url "220x120" crop="center" as foo %}
<img src="{{MEDIA_ROOT}}{{ foo.url }}" width="{{ foo.width }}" height="{{ foo.height }}">
{% endthumbnail %}

现在我在“媒体”目录中有一个名为“缓存”的目录,其中包含所有图像,生成的代码是

 <img width="220" height="120" src="/media/cache/c6/5d/c65d3cd46c4ef6154c788526bfa3447f.jpg">

这是我的设置

 MEDIA_ROOT = os.path.join(PROJECT_ROOT, 'media')
 MEDIA_URL = '/media/'
 STATIC_URL = '/static/'

但我在屏幕上看不到图像 == 无法加载给定的 url(firebug)

使其工作的一种可能方法是在静态目录中自动生成缓存目录。如果我将缓存目录复制到静态目录并将设置更改为

MEDIA_URL = ''
<img src="{{STATIC_URL}}{{ foo.url }}" width="{{ foo.width }}" height="{{ foo.height }}">

【问题讨论】:

  • 我看不出那个网址有什么问题。
  • 是的,可能是我想念什么东西或图书馆!
  • @Ahmed,怎么了?图像文件是否损坏?这不是您要找的图像吗?尺寸不正确吗?如果您担心的话,文件名看起来是正确的。
  • @Yuji,我认为你提到的每件事都可以,但仍然无法正常工作
  • 您的开发服务器或生产服务器有问题吗?尝试更改为 。从文档中,您看起来正确,但我认为 URL 应该以 MEDIA_URL 开头。

标签: django sorl-thumbnail


【解决方案1】:

这是 sorl-thumbnail 命名其文件的标准方式。这些文件的大小由您调用缩略图标签的任何参数调整。结果是一个看起来像 cache/81/a8/81a884b2bce95dfe60e7397ea15d10f2.jpg 的 url。如果您没有看到任何内容,您可能需要查看您的 STATIC_URL 设置。

许多网站都有一个静态网址,这样您的图片 src 就会显示为

http://static.example.com/cache/81/a8/81a884b2bce95dfe60e7397ea15d10f2.jpg

http://example.com/media/cache/81/a8/81a884b2bce95dfe60e7397ea15d10f2.jpg

【讨论】:

  • 我有一个名为缓存的文件夹,其中包含所有图像,但仍然对如何链接到它感到困惑。如何获得这部分 static.example.com/ 谢谢
【解决方案2】:

更改您的媒体根目录:MEDIA_ROOT = os.path.join(PROJECT_ROOT, 'media')

在 LOCAL 上这样的事情:

MEDIA_ROOT = /home/user/project/app/media/

MEDIA_URL = /site_media/

为了生产,我做了这样的事情:

MEDIA_ROOT = '/home/user/webapps/media/'

MEDIA_URL = 'http://domain.com/site_media/'

当我切换到新的 sorl 时,我遇到了这个问题,但现在一切都对我有用。希望这可以帮助。

【讨论】:

    猜你喜欢
    • 2012-03-21
    • 2011-12-31
    • 2011-08-06
    • 2016-05-09
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 2014-12-21
    • 2017-08-09
    相关资源
    最近更新 更多