Django 1.5中的模板上下文处理器在哪里? [英] Where is template context processor in Django 1.5?

查看:122
本文介绍了Django 1.5中的模板上下文处理器在哪里?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否应该自动在Settings.py中列出或者是否添加它?我在开发中提供了一个可怕的图像文件,并且文档对于我的口味来说太过分了,因为某些原因,我并不清楚地将其显示出来。我想检查看看我的template_context_processors是什么,但它在哪里?它不在我的settings.py文件中。我需要编辑这个吗?

 (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.contrib.messages.context_processors.messages)


解决方案

settings.py 中,您可以定义 TEMPLATE_CONTEXT_PROCESSORS 设置。



但是,django已为此设置定义了默认值,该值为

 (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.tz,
django.contrib.messages.context_processors.messages)

如果你想要添加维护默认处理器的自定义模板上下文处理器,可以在 settings.py

  import django.conf.global_settings as DEFAULT_SETTINGS 

TEMPLATE_CONTEXT_PROCESSORS = DEFAULT_SETTINGS.TEMPLATE_CONTEXT_PROCESSORS +(
'custom_context_processors.my_context_processor',

参考 TEMPLATE_CONTEXT_PROCESSORS doc。


Is it supposed to be listed in Settings.py automatically or do I have to add it? I am having a ridiculously hard time serving up an image file in development and the docs are too terse for my taste and don't spell things out clearly to me for some reason. I'd like to check to see what my template_context_processors are, but where is it located? It's not in my settings.py file. Do I need to edit this typically?

("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.contrib.messages.context_processors.messages")

解决方案

In your settings.py you can define TEMPLATE_CONTEXT_PROCESSORS setting.

However, django has defined default values for this setting which is

("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.tz",
"django.contrib.messages.context_processors.messages")

If you want to add your custom template context processor which maintaining the default processors, you can do following in settings.py

import django.conf.global_settings as DEFAULT_SETTINGS

TEMPLATE_CONTEXT_PROCESSORS = DEFAULT_SETTINGS.TEMPLATE_CONTEXT_PROCESSORS + (
    'custom_context_processors.my_context_processor',
)

Refer TEMPLATE_CONTEXT_PROCESSORS doc.

这篇关于Django 1.5中的模板上下文处理器在哪里?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆