【发布时间】:2010-10-29 02:45:40
【问题描述】:
配置不当:中间件模块“report”未定义“ReportMiddleware”类
但是我已经定义了这个,但可能定义在错误的地方,那么我应该将这个类文件放在哪里?
【问题讨论】:
配置不当:中间件模块“report”未定义“ReportMiddleware”类
但是我已经定义了这个,但可能定义在错误的地方,那么我应该将这个类文件放在哪里?
【问题讨论】:
今天我遇到了同样的错误。这是由于混淆(至少对我而言)命名方案。
如果你像这样指定你的中间件:
'yourapp.SomeMiddleware'
在您的 settings.py 中,并将您的 SomeMiddleware 类定义放在您的应用程序目录中的 SomeMiddleware.py 中,您的项目将中断。在这种情况下,settings.py 应为:
'yourapp.SomeMiddleware.SomeMiddleware'
更好的方法是对所有中间件定义使用通用 yourapp/middleware.py 并像 django.contrib 中间件一样使用它,在这种情况下,您的 seetings.py 应该包括:
'yourapp.middleware.SomeMiddleware'
【讨论】:
您应该按照MIDDLEWARE_CLASSES 设置中的指定将其放入包中的模块中。
【讨论】: