姜戈。找不到媒体文件
Django. Media Files not found
好的,我有一个 Django 1.10 项目。相关设置如下所示:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
MEDIA_ROOT = BASE_DIR + "/media/"
MEDIA_URL = '/media/'
我在本地工作,我可以正确上传图片。但是当我尝试使用 {{ image.image.url }}
访问模板上的图像时,我得到了 404。在终端中我可以看到:
[06/Sep/2016 18:13:43] "GET /media/folder/uploaded_image.jpg HTTP/1.1" 404 4900
但是如果我查看我的文件夹,文件就在那里,由 django 正确上传。
尝试使用 os.path.join,像这样:
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
您可能还需要更新您的 urls.py:
from django.conf import settings
from django.conf.urls.static import static
from django.conf.urls import url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
]
if settings.DEBUG is True:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
好的,我有一个 Django 1.10 项目。相关设置如下所示:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
MEDIA_ROOT = BASE_DIR + "/media/"
MEDIA_URL = '/media/'
我在本地工作,我可以正确上传图片。但是当我尝试使用 {{ image.image.url }}
访问模板上的图像时,我得到了 404。在终端中我可以看到:
[06/Sep/2016 18:13:43] "GET /media/folder/uploaded_image.jpg HTTP/1.1" 404 4900
但是如果我查看我的文件夹,文件就在那里,由 django 正确上传。
尝试使用 os.path.join,像这样:
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
您可能还需要更新您的 urls.py:
from django.conf import settings
from django.conf.urls.static import static
from django.conf.urls import url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
]
if settings.DEBUG is True:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)