Переопределение конкретного поля __get__ на экземпляре модели в Django

Я пытаюсь временно подправить request.user, чтобы изменить его поведение (в моем случае мне нужно предупредить разработчиков, что поле устарело или вызвать исключение)

У меня есть промежуточное программное обеспечение следующего вида:

def middleware(request: HttpRequest) -> HttpResponse:
    if request.user.is_authenticated and request.user.patient is not None:
        def _get_patient():
            raise SomeAPIError()  # or return value with warning
        request.user.patient = _get_patient

    response = get_response(request)

    return response

return middleware

Проблема в том, что, конечно, Django не позволяет мне сделать это так просто. Я понимаю, что patient свойство здесь является дескриптором, и я хочу переопределить его __get__ метод, но я не знаю как.

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