django filer上传图片但未显示(文件丢失)

时间:2014-08-19 23:01:31

标签: django image upload

当我在django filer上传图片时,该图片位于媒体目录中,但我在管理员处收到file missing消息..

图像:

enter image description here

settings.py:

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'myproject/static/')
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'myproject/public'),
)
MEDIA_ROOT = os.path.join(BASE_DIR, 'myproject/media/')
MEDIA_URL = '/media/'

urls.py:

...
if settings.DEBUG:
    # static files (images, css, javascript, etc.)
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

修改 检查PIL / Pillow是否已正确安装为easy_thumbnails的依赖项。通常,丢失的解码器,例如libjpeg会导致这种行为。

在64位Ubuntu上,您可以执行以下操作:

pip uninstall PIL
sudo apt-get install libjpeg8
ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib
pip install PIL

对于Macintosh,

pip uninstall PIL
brew install libjpeg
pip install PIL

原创但不正确 在urls.py中,试试这个:

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

if settings.DEBUG:
    urlpatterns = patterns('',
        url(r'^media/(?P<path>.*)$', 'django.views.static.serve',
            {'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
    ) + staticfiles_urlpatterns() + urlpatterns

另外,检查文件是否上传到正确的目录。