1

我正在尝试让中间件与 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', {})

中间件.py:

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

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

4

1 回答 1

1

我需要将中间件函数添加到中间件元组中:

 'my_app.middleware.my_mw',

然后我不包括@my_mw

于 2013-06-13T05:19:31.430 回答