Как мне создать новый модуль в django и зарегистрировать классы в этом модуле

Я хочу создать новый модуль и набор классов в моем приложении. Я создал подпапку "customclasses" и поместил туда свои классы python в отдельных файлах. Но когда я пытаюсь получить к ним доступ, он говорит, что они не определены.

Разместите свое промежуточное ПО в конце раздела промежуточного ПО

Точная ссылка будет зависеть от того, где находятся файлы в вашей структуре каталогов относительно папки проекта. Я держу свой в той же папке, что и мои базовые файлы URLs.py и asgi/wsgi, поэтому мой выглядит следующим образом

MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'dose.middleware.CustomMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'projectname.middleware_filename.middlewareclass1',
'projectname.middleware_filename.middlewareclass2',
]

Я пытался найти способ подклассифицировать основной класс Django, чтобы изменить его поведение. Я нашел, как это сделать, но по пути я обнаружил Django Middleware, которое может перехватывать запросы и ответы в любом месте приложения независимо от приложения. CustomMiddleware был ключом, и с его помощью я могу делать все, что захочу, до или после обработки запроса моделью.

Здесь документация по Middleware

Enjoy.

Вернуться на верх