Ich benutze Django (Version 1.3) und habe sowohl den Admin-Benutzernamen als auch das Passwort vergessen. Wie kann ich beides zurücksetzen?
Ist es möglich, einen normalen Benutzer zum Admin zu machen und dann den Admin-Status zu entfernen?
Ich benutze Django (Version 1.3) und habe sowohl den Admin-Benutzernamen als auch das Passwort vergessen. Wie kann ich beides zurücksetzen?
Ist es möglich, einen normalen Benutzer zum Admin zu machen und dann den Admin-Status zu entfernen?
Wenn Sie die Benutzernamen nicht kennen, wie sie hier erstellt wurden, können Sie die Benutzer gemäß @FallenAngel oben beschriebenen Methode erhalten.
python manage.py shell
from django.contrib.auth.models import User
usrs = User.objects.filter(is_superuser=True)
#identifizieren Sie den Benutzer
your_user = usrs.filter(username="yourusername")[0]
#youruser = usrs.get(username="yourusername")
#dann setzen Sie das Passwort
Falls Sie jedoch Ihr eigenes Benutzermodell erstellt haben. Ein einfacher Fall tritt auf, wenn Sie die E-Mail als Benutzernamen verwenden möchten, anstelle des Standard-Benutzernamens. In diesem Fall befindet sich Ihr Benutzermodell irgendwo wie z.B. in your_accounts_app.models; dann funktioniert die obige Lösung nicht. In diesem Fall können Sie stattdessen die Methode get_user_model verwenden.
from django.contrib.auth import get_user_model
super_users = get_user_model().objects.filter(is_superuser=True)
#fahren Sie fort, um Ihren Benutzer zu identifizieren
# und setzen Sie ihr Benutzerpasswort
Eine weitere Sache, die es wert ist zu beachten, ist den Status des Benutzers is_staff
als aktiv zu setzen. Zumindest ist das, was für mich funktioniert. Für mehr Details habe ich einen weiteren superuser
erstellt, wie oben erklärt wurde. Dann gehe ich zur Datenbanktabelle auth_user
und suche nach diesem Benutzernamen, um sicherzustellen, dass die Flagge is_staff
auf 1
gesetzt ist. Das hat es mir schließlich ermöglicht, mich auf der admin
Seite anzumelden.
Erstellen Sie einen neuen Superuser mit dem Befehl "python manage.py createsuperuser". Melden Sie sich als neuer Super-Benutzer an. Klicken Sie auf den 'Benutzer' Link. Klicken Sie dann auf den Benutzer, den Sie löschen möchten. Klicken Sie auf Benutzer löschen am Ende der Formularseite.
Hinweis - Der obige Prozess führt zu Änderungen in den Aktivitätsprotokollen, die von diesem bestimmten Benutzer durchgeführt wurden.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
0 Stimmen
Bitte stellen Sie keine zwei verschiedenen Fragen in einem Beitrag.