Wie kann ich programmatisch die Authentifizierung eines Benutzers in Django?
Wie kann ich die log-in-der Benutzer programmgesteuert in Django? Ich habe den Benutzernamen und das Kennwort des Benutzers. Gibt es eine Methode, die sich mal bei mir melden ihn?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es keine andere Möglichkeit, als "programmatisch". Natürlich, dies ist dokumentiert.
=
im keyword-Argumente, aber natürlich bist du frei zu tun, was Sie wollen.Alsways vorsichtig sein, wenn die programmgesteuerte Protokollierung der Benutzer in, erhalten Sie möglicherweise die Fehlermeldung
user has no attribute "backend"
. Setzen Sie das backend auch wenn das hat nicht passiert ist bisher. Projekt, das mit dieser und einige Beispiel-code:Die akzeptierte Antwort, die definitiv funktioniert, aber ich bevorzuge die Django eingebauten auth Formen, wie
django.contrib.auth.forms.AuthenticationForm
Hier ist ein snippet zeigt, dass der wichtige Teil
Den großen Unterschied bei diesem Ansatz ist, dass
AuthenticationForm.clean
Methodenaufrufeauthentication
Funktion für Sie und prüftUser.is_active
für Sie als gut.