Django媒体(图片)突然无法加载



我正在用Django开发一个网站,我在我的项目中有很多图片,从管理面板上传,并保存在我为这些上传单独创建的媒体文件夹中,它工作得很好,我想在几个月内确切的方式,突然他们只是没有加载,得到404为他们所有人,没有任何变化的项目,他们只是没有加载。我的媒体路径Settings.py:

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

我已将此添加到应用程序的url .py末尾:

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

就像我说的,它工作了很长时间,突然发生了这个

编辑:我刚刚发现,这是发生当我使用重定向功能在我的一个视图

另一种方法是:

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)

因此,如果settings.py文件中的DEBUG=True,我们将static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)添加到urlpatterns。这在某种意义上提供了更好的管理。

我有同样的问题,这有助于我:

将此添加到url .py中的url模式列表中:

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.

最新更新