Django medias (изображения) внезапно не загружаются

Я разрабатываю сайт на Django, в моем проекте было много картинок, загруженных из панели администратора и сохраненных в папке Media, которую я создал для этих загрузок отдельно, Она работала нормально и точно так, как я хотел в течение нескольких месяцев, внезапно они просто не загружаются, получая 404 для всех них, без каких-либо изменений в проекте, они просто не загружаются. Мой путь к медиа в Settings.py :

MEDIA_URL = 'media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "media")

Я добавил это в конец моего urls.py приложения:

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

и как я уже сказал, он работал нормально в течение долгого времени, внезапно это произошло

У меня была такая же проблема, и это мне помогло :

Добавьте это в ваш urls.py в список urlpatterns :

from django.views.static import serve
from django.conf import settings
from django.conf.urls import url
urlpatterns = [
url(r'^media/(?P<path>.*)$', serve,{'document_root': settings.MEDIA_ROOT}),
# YOUR URLS ARE HERE
]

Конечно, оставайтесь в Debug=True в settings.py.

Другой способ:

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
     path('admin/', admin.site.urls),
     # other URLs ... 
]

# If DEBUG=True in the settings file
if settings.DEBUG:
     urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Так что мы добавляем static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) к urlpatterns, если DEBUG=True в файле settings.py. Это дает в некотором смысле лучшее управление.

Вернуться на верх