姜戈。未找到媒体文件
Posted
技术标签:
【中文标题】姜戈。未找到媒体文件【英文标题】:Django. Media Files not found 【发布时间】:2017-01-14 12:10:38 【问题描述】:好的,我有一个 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 正确上传。
【问题讨论】:
【参考方案1】:尝试使用 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)
【讨论】:
其实没有必要检查settings.DEBUG
,因为static()
已经为你做了。您可以在source 和docs 中看到这一点。以上是关于姜戈。未找到媒体文件的主要内容,如果未能解决你的问题,请参考以下文章
禁止(未设置 CSRF cookie。):/paypal/ |姜戈
Django Crud,Django crd应用程序,Django-ajax Crud,Djano Boilerplate应用程序,姜戈注册,姜戈登录,姜戈文件上传,Crud,Bootstrap,aj