Django Middleware:object .__ new __()不带参数

时间:2013-06-13 05:02:53

标签: django django-middleware

我正在尝试使用Django中间件,但是我收到错误:

object.__new__() takes no parameters

我添加了中间件元组:

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',
)

我的观点如下:

from middleware import my_mw
@my_mw  
def start(request):
    do stuff...
    return render_to_response('a.html', {})

middleware.py:

class my_mw(object):
    def process_request(self, request):
        x = 6
        return None

我还尝试过各种其他中间件功能,我从示例中复制粘贴。我总是得到同样的错误。在这一点上,我真的只想让任何中间件功能起作用!

1 个答案:

答案 0 :(得分:1)

我需要将中间件功能添加到中间件元组:

 'my_app.middleware.my_mw',

然后我不包括@my_mw