В промежуточном программном обеспечении django.contrib.auth
Я вижу код:
class AuthenticationMiddleware(object):
def process_request(self, request):
assert hasattr(request, 'session'), "requires session middleware"
request.__class__.user = LazyUser()
return None
Пожалуйста, скажите мне, почему такая форма
request._ class _.user = LazyUser ()
используемый?
Почему не просто
request.user = LazyUser ()
Я знаю, что означает атрибут _ class _, но, как я понимаю, прямое назначение переменной экземпляра будет лучше. Где я не прав?