4

配置不当:中间件模块“report”未定义“ReportMiddleware”类

但是我已经定义了这个,但可能定义在错误的地方,那么我应该将这个类文件放在哪里?

4

2 回答 2

16

今天我有同样的错误。这是由于混淆(至少对我而言)命名方案。

如果您像这样指定中间件:

'yourapp.SomeMiddleware'

在您的 settings.py 中,并将您的 SomeMiddleware 类定义放在您的应用程序目录中的 SomeMiddleware.py 中,您的项目将中断。在这种情况下,settings.py 应该是:

'yourapp.SomeMiddleware.SomeMiddleware'

更好的方法是对所有中间件定义使用通用 yourapp/middleware.py 并像 django.contrib 中间件一样使用它,在这种情况下,您的 seetings.py 应该包括:

'yourapp.middleware.SomeMiddleware'
于 2011-11-21T21:57:32.307 回答
1

您应该按照设置中的指定将其放在包中的模块中MIDDLEWARE_CLASSES

于 2010-10-29T02:53:10.327 回答