3

好的,我有一个 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 正确上传。

4

1 回答 1

14

尝试使用 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)
于 2016-09-06T23:37:09.570 回答