Django: ошибка: модуль неправильно настроенный не определяет "" класс - PullRequest
4 голосов
/ 29 октября 2010

ImproperlyConfigured: модуль промежуточного программного обеспечения "report" не определяет класс "ReportMiddleware"

Но я определил это, но, вероятно, определил не в том месте, так где я должен разместить этот файл класса?

Ответы [ 2 ]

15 голосов
/ 22 ноября 2011

Сегодня у меня была такая же ошибка. Это произошло из-за запутанной (по крайней мере для меня) схемы именования.

Если вы укажете свое промежуточное программное обеспечение следующим образом:

'yourapp.SomeMiddleware'

в файле settings.py и поместите определение класса SomeMiddleware в SomeMiddleware.py в директорию приложения, в которой ваш проект потерпит крах. В этом случае settings.py должен читать:

'yourapp.SomeMiddleware.SomeMiddleware'

лучшим способом было бы использовать общий yourapp / middleware.py для всех определений промежуточного программного обеспечения и использовать его, как это делают промежуточные программы django.contrib, и в этом случае ваш seetings.py должен включать:

'yourapp.middleware.SomeMiddleware'
1 голос
/ 29 октября 2010

Вы должны поместить его в модуль в упаковке, как указано в настройке MIDDLEWARE_CLASSES.

...