0
我在settings.pyDjango的 - 有一些問題,供應static_url文件,但MEDIA_URL工程確定
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "static", "media")
STATIC_ROOT = os.path.join(BASE_DIR, "static", "static_root")
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static", "static_files"),
)
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'templates'),
)
已經這在我的urls.py
if settings.DEBUG:
handler404 = 'views.custom_404'
handler500 = 'views.custom_500'
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
我在WSGI已經這一點。 PY
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ecommerce.settings")
from django.core.wsgi import get_wsgi_application
from whitenoise.django import DjangoWhiteNoise
application = get_wsgi_application()
application = DjangoWhiteNoise(application)
Eveything在開發時DEBUG & TEMPLATE_DEBUG設置爲True時工作正常。一旦設置爲FALSE,我只能在網站上看到靜態文件。
例如這個靜態載荷
src="/static/img/placeholder.svg"
但媒體並沒有
src="/media/foodtruck/logo/banner2.jpg"
這些文件夾中的HTML設置爲這樣
root\static\media\foodtruck\logo\banner2.jpg
root\static\static_root\img\placeholder.svg
<img src="{{ MEDIA_URL }}{{ truck.logo }}">
<img src="{{ STATIC_URL }}img/placeholder.svg">
感謝。靜態文件工作正常。我更關心媒體文件。它是如何得到服務而不是媒體的?我正在使用heroku。 –