简体   繁体   English

如果DEBUG = False,则不显示heroku-django上传的图像

[英]heroku-django-uploaded image is not displayed if DEBUG=False

I deployed my Django app on heroku. 我在heroku上部署了我的Django应用程序。 Every thing is working fine except displaying images. 除了显示图像外,每件事情都很好。 Any uploaded image is not displayed if DEBUG=False. 如果DEBUG = False,则不显示任何上传的图像。

settings.py 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 urls.py

urlpatterns=[
   ...
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

image tag in my template 我的模板中的图片标记

<img alt="img" src="/blog{{image}}"></a>

Whitenoise uses static file finders when DEBUG=True , so you most likely have a problem with your static file collection process. DEBUG=True ,Whitenoise使用静态文件查找器 ,因此您很可能在静态文件收集过程中遇到问题。

Update your STATIC_ROOT and MEDIA_ROOT settings to a recommended method, such as: STATIC_ROOTMEDIA_ROOT设置更新为推荐的方法,例如:

STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_ROOT = os.path.join(BASE_DIR, 'images')

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM