自定义上下文处理器不起作用

时间:2018-02-25 10:14:45

标签: django django-templates django-context

我有以下代码:

1)上下文处理器

def defaults(request):
    return {
        'LOGO_DEFAULT_SRC': LOGO_DEFAULT_CSRC
    }

2)设置

  'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
                # custom processors
                'apps.core.context_processors.defaults',
            ],

3)在模板中

{{ defaults.LOGO_DEFAULT_SRC }}

4)我使用基于通用类的视图。

我不明白为什么这不起作用。我重新启动了服务器,清理了.pyc文件。

1 个答案:

答案 0 :(得分:2)

创建上下文处理器时,您在defaults函数中返回的字典将添加到全局上下文中,因此您只需按名称在模板中访问该字典。

而不是使用:

{{ defaults.LOGO_DEFAULT_SRC }}

你需要使用:

{{LOGO_DEFAULT_SRC}}
相关问题