Überprüfen Sie den angemeldeten Benutzer in Django

Vaibhav Vaibhav 30 Januar 2023
  1. Überprüfen Sie den angemeldeten Benutzer in Ansichten in Django
  2. Überprüfen Sie den angemeldeten Benutzer in Vorlagen in Django
Überprüfen Sie den angemeldeten Benutzer in Django

Django ist mit einem robusten Authentifizierungssystem vorgefertigt. Daher ist es ziemlich einfach, den aktuell angemeldeten Benutzer in Django zu überprüfen. Aber es hängt davon ab, wo Sie nach dem angemeldeten Benutzer suchen möchten, also in Ansichten oder Vorlagen.

In diesem Artikel besprechen wir, wie Sie den angemeldeten Benutzer für beide Standorte überprüfen.

Überprüfen Sie den angemeldeten Benutzer in Ansichten in Django

In Ansichten können wir mit der request den eingeloggten Benutzer überprüfen. Eine request enthält eine Reihe von Informationen wie den Client-Rechner, die Client-IP, den Anfragetyp und die Daten usw., und eine dieser Informationen bezieht sich auf den Benutzer, der diese Anfrage stellt.

Beziehen Sie sich auf den folgenden Code

if request.user.is_authenticated:
    print("User is logged in :)")
    print(f"Username --> {request.user.username}")
else:
    print("User is not logged in :(")

Wir können mit request.user.is_authenticated überprüfen, ob der Benutzer eingeloggt ist oder nicht. Wenn der Benutzer eingeloggt ist, wird True zurückgegeben. Andernfalls wird False zurückgegeben.

Überprüfen Sie den angemeldeten Benutzer in Vorlagen in Django

Wie in Ansichten können wir auch die request innerhalb der Vorlagen verwenden, um nach dem eingeloggten Benutzer zu suchen. Die Syntax ist genau gleich. In Templates verwenden wir die Template-Tags von Django, um eine if-else Anweisung zu erstellen.

<body>
    {% if request.user.is_authenticated %}
        <p>User is logged in :)</p>
        <p>Username -->  {{ request.user.username }}</p>
    {% else %}
        <p>User is not logged in :(</p>
    {% endif %}
</body>
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Verwandter Artikel - Django User