Django 1.5中的模板上下文处理器在哪里? [英] Where is template context processor in Django 1.5?
问题描述
(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屋!