Link Search Menu Expand Document

Middleware

Создадим файл middleware.py и создадим следующий класс

class FirstMiddleware:
    def __init__(self, get_response):
        self._get_response = get_response

    def __call__(self, request):
        print('Код до view')
        print(f'{request=}')
        response = self._get_response(request)
        print('Код после vew')
        return response

    def process_exception(self, request, exception):
        # Когда в нашем View возникнет неотловленное исключение, вызовется этот метод
        # И в этом методе можно обработать данное исключение
        print(f'{exception=}')

Ссылку на данный клас указываем в settings.py

MIDDLEWARE = [
    # ...
    'testapp.middleware.FirstMiddleware',
]

Порядок в MIDDLEWARE имеет значение