632 Stimmen

Wie setze ich das Django-Admin-Passwort zurück?

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?

0 Stimmen

Bitte stellen Sie keine zwei verschiedenen Fragen in einem Beitrag.

1131voto

JamesO Punkte 23438
python manage.py changepassword 

siehe Dokumentation

220voto

DrTyrsa Punkte 29950
  1. python manage.py createsuperuser wird einen weiteren Superuser erstellen, mit dem Sie sich im Admin-Bereich einloggen können und sich an Ihren Benutzernamen erinnern können.
  2. Ja, warum nicht.

Um einem normalen Benutzer Privilegien zu geben, öffnen Sie eine Shell mit python manage.py shell und versuchen Sie es:

from django.contrib.auth.models import User
user = User.objects.get(username='normaluser')
user.is_superuser = True
user.save()

173voto

FallenAngel Punkte 17178

Sie können es über die Konsole versuchen:

python manage.py shell

verwenden Sie dann das folgende Skript in der Shell

from django.contrib.auth.models import User
User.objects.filter(is_superuser=True)

listet alle Super-Benutzer im System auf. Wenn Sie Ihren Benutzernamen aus der Liste erkennen:

usr = User.objects.get(username='Ihr Benutzername')
usr.set_password('rohes Passwort')
usr.save()

und setzen Sie ein neues Passwort (:

26voto

Aldarund Punkte 16490

Sie können einen neuen Superuser mit dem createsuperuser Befehl erstellen.

24voto

Mossab Punkte 475

Zusätzlich zu @JamesO's Antwort, die besagt, dass man folgendes verwenden soll

python manage.py changepassword [Benutzername]

Wenn Sie sich nicht an Ihren Benutzernamen erinnern:

1- Während Sie sich im Hauptverzeichnis Ihres Projekts befinden, greifen Sie auf die Datenbank zu (ich verwende sqlite3):

sqlite3 db.sqlite3

2- Listen Sie den Inhalt der auth_user Tabelle auf

SELECT * FROM auth_user ;

3- Suchen Sie nach dem Benutzer, der is_superuser = 1 hat, in meinem Fall ist es admin Screenshot der Befehlsausgabe (Ich habe nicht genug Rufpunkte)

CodeJaeger.com

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.

Powered by:

X