def get_user(request: HttpRequest) -> User: """ Get a `User` from the request. If the user cannot be found we return `AnonymousUser`. Modified from: https://github.com/django/django/blob/6e99585c19290fb9bec502cac8210041fdb28484/django/contrib/auth/middleware.py#L9-L12 """ if not hasattr(request, "_cached_user"): user = None try: user_id = request.session["user_id"] except KeyError: pass else: user = User.objects.filter(id=user_id).first() request._cached_user = user or AnonymousUser() return cast(User, request._cached_user)
def logout(request: HttpRequest) -> HttpResponse: request.session.flush() request.user = AnonymousUser() return HttpResponse(status=201)
def logout(request: HttpRequest) -> None: """ https://github.com/django/django/blob/6e99585c19290fb9bec502cac8210041fdb28484/django/contrib/auth/__init__.py#L134-L148 """ request.session.flush() request.user = AnonymousUser()