我在heroku上部署了我的Django应用程序。除了显示图像外,每件事情都很好。如果DEBUG = False,则不显示任何上传的图像。
settings.py
DEBUG = False
ALLOWED_HOSTS = ['salma-blog.herokuapp.com']
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
STATIC_ROOT = os.path.dirname(myblog.__file__)+'/static/'
STATIC_URL = '/static/'
#upload images
MEDIA_ROOT= os.path.dirname(myblog.__file__)+'/static/myblog/images'
MEDIA_URL='/images/'
urls.py
urlpatterns=[
...
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
我的模板中的图片标记
<img alt="img" src="/blog{{image}}"></a>
答案 0 :(得分:0)
Whitenoise在DEBUG=True
时使用static file finders,因此您很可能在静态文件收集过程中遇到问题。
将您的STATIC_ROOT
和MEDIA_ROOT
设置更新为推荐方法,例如:
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_ROOT = os.path.join(BASE_DIR, 'images')