【发布时间】:2011-03-17 02:24:45
【问题描述】:
我正在尝试使用 process_template_response 编写一个 django 中间件,但我似乎无法正常工作,任何人都可以帮我解决这个问题,或者举例说明如何使用该方法。
下面是我的代码:
class MiddleWare(object):
def process_template_reponse(self, request, response):
response.context_data = dict(title='title')
response.template_name = 'pages/helloworld.html'
return response
在 settings.py 中
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'proj.app.middleware.MiddleWare', # here my middleware
)
在模板中
<!-- nothing is showing -->
{% block title %}{{ title }}{% endblock %}
顺便说一句,我使用的是 Django 1.3 rc 1
谢谢
【问题讨论】:
-
当你说“什么都没有显示”时,你检查过原始响应吗?
-
你有一个错字是
process_template_response而不是process_template_reponse
标签: django middleware