我需要在我的所有模板中获取一个环境变量(例如:Mixpanel_Token),而无需在 Django 中创建新视图。
根据我在 SO 上阅读的内容,我应该使用模板上下文处理器。
context_processor 在 context_processors.py 文件中定义:
from django.conf import settings
def settings_mixpanel(request):
ctx = {
"MIXPANEL_TOKEN": settings.MIXPANEL_TOKEN,
}
return ctx
在我的 settings.py 文件中:
TEMPLATE_CONTEXT_PROCESSORS = (
'utils.context_processors.settings_mixpanel',
)
我遇到的问题是如何MIXPANEL_TOKEN
在我的所有模板中定义为上下文变量,因为我的所有视图都已经在 Django 中创建。
我不想使用render_to_response
函数重新创建如下视图:
def index(request):
return render_to_response("index.html", {},context_instance=RequestContext(request))