Python 空的{MEDIA_URL}}标记,由从Django 1.7.2转换到1.8引起

Python 空的{MEDIA_URL}}标记,由从Django 1.7.2转换到1.8引起,python,django,Python,Django,我最近从Django 1.7.2升级到1.8,遇到了一些问题,特别是在呈现{MEDIA_URL}}标记时,它显示为空。我已经找了好几个小时了,到底是什么原因导致了这个问题,但我不知所措。任何帮助都将不胜感激 在myurl.py中,我添加了 + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 设置.py STATIC_ROOT = os.path.join(BASE_DIR, 'tala_app/static/') ST

我最近从Django 1.7.2升级到1.8,遇到了一些问题,特别是在呈现{MEDIA_URL}}标记时,它显示为空。我已经找了好几个小时了,到底是什么原因导致了这个问题,但我不知所措。任何帮助都将不胜感激

在myurl.py中,我添加了

+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
设置.py

STATIC_ROOT = os.path.join(BASE_DIR, 'tala_app/static/')
STATIC_URL = '/static/'

MEDIA_ROOT = os.path.join(BASE_DIR, 'tala_app/media/')
MEDIA_URL = '/media/'
然而,我的静态文件似乎工作正常

在my views.py中,我返回为:

return render(request, 'browse.html', context)
并试图使用:

return render_to_response('test.html', context, 
    context_instance = RequestContext(request))
其中context是一个上下文字典,但迄今为止还没有一个成功

如果我将一个链接设置为/media/{{path to img}}而不是{{media_URL}}{{{path to img}},那么它可以正常工作

我觉得好像我错过了一些非常明显的东西,但却不知道是什么

谢谢


注:如果在从1.7.2过渡到1.8的过程中还有什么重要的事情,请告诉我(我已经在他们的网站上看到了向后不兼容的变化,或者至少尽我所能)

Django 1.8的升级为模板引入了新的设置。而不是使用:

TEMPLATE_CONTEXT_PROCESSORS = (
"django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.request",
"django.contrib.messages.context_processors.messages",
"main_app.context_processor.NavbarContext",)
你应使用:

TEMPLATES = [
{
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [],
    'APP_DIRS': True,
    'OPTIONS': {
        'context_processors': [
            'django.template.context_processors.debug',
            'django.template.context_processors.request',
            'django.contrib.auth.context_processors.auth',
            'django.template.context_processors.i18n',
            'django.template.context_processors.media',
            'django.template.context_processors.static',
            'django.template.context_processors.tz',
            'django.contrib.messages.context_processors.messages',
        ],
    },
},]
Django文件中说:

已弃用所有现有模板相关设置

更新你的模板设置,你会没事的。 有关更多信息,请参阅: