Réponses:
python manage.py changepassword <user_name>manage.py createsuperuserpour créer un deuxième superutilisateur, puis afficher la liste des utilisateurs pour trouver l'original. Connectez-vous ensuite en tant qu'original et supprimez le nouveau superutilisateur.
                    python manage.py createsuperuser créera un autre superutilisateur, vous pourrez vous connecter à l'administrateur et mémoriser votre nom d'utilisateur.Pour donner un privilège d'utilisateur normal, ouvrez un shell avec python manage.py shellet essayez:
from django.contrib.auth.models import User
user = User.objects.get(username='normaluser')
user.is_superuser = True
user.save()
user.is_staff = True
                    Vous pouvez essayer via la console:
python manage.py shellpuis utilisez le script suivant dans le shell
from django.contrib.auth.models import User
User.objects.filter(is_superuser=True)
vous répertoriera tous les super utilisateurs du système. si vous reconnaissez votre nom d'utilisateur dans la liste:
usr = User.objects.get(username='your username')
usr.set_password('raw password')
usr.save()
et vous définissez un nouveau mot de passe (:
User.objects.filter(is_superuser=True)
                    pip install django-extensions, ajoutez-le installed appset exécutez ./manage.py shell_plus. Le Usercours sera disponible et vous le pouvez password-change.
                    Vous pouvez créer un nouveau superutilisateur avec la createsuperusercommande.
L'une des meilleures façons de récupérer le nom d'utilisateur et le mot de passe est de les afficher et de les mettre à jour. Le modèle utilisateur fournit un moyen parfait de le faire.
Imprimer une liste des utilisateurs Pour les utilisateurs de Python 2, utilisez la commande "imprimer les utilisateurs" Pour les utilisateurs de Python 3, utilisez la commande "imprimer (utilisateurs)" Le premier utilisateur est généralement l'administrateur.
Sélectionnez l'utilisateur dont vous souhaitez modifier le mot de passe, par exemple
"user = users[0]"
Définissez le mot de passe
user.set_password('name_of_the_new_password_for_user_selected')
Enregistrez le nouveau mot de passe
"user.save()"
Démarrez le serveur et connectez-vous en utilisant le nom d'utilisateur et le mot de passe mis à jour.
manage.py changepasswordest que vous n'êtes pas limité aux mots de passe que vous pouvez ou ne pouvez pas utiliser - plus trop similaire à la merde de nom d'utilisateur. (C'est dans mon environnement de développement. Je ne préconise pas des mots de passe plus faibles. Vous devriez toujours utiliser des mots de passe forts dans prod.)
                    Vous pouvez également avoir mal répondu à une question de configuration et n'avoir aucun membre du personnel. Dans ce cas, rendez-vous aux postgres:
obvioustest=# \c [yourdatabasename]
obvioustest=# \x
obvioustest=# select * from auth_user;
-[ RECORD 1 ]+-------------
id           | 1
is_superuser | f
is_staff     | f
...
Pour corriger, modifiez directement:
update auth_user set is_staff='true' where id=1;Deux façons de procéder:
La changepassword commande de gestion :
(env) $ python manage.py changepassword <username>Ou (qui développe quelques réponses, mais fonctionne pour tout modèle utilisateur étendu) en utilisant le shell django-admin comme suit:
(env) $ python manage.py shellCela devrait faire apparaître l'invite de commande du shell comme suit:
Python 3.7.2 (default, Mar 27 2019, 08:44:46) 
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>>
Ensuite, vous voudriez ce qui suit:
>>> from django.contrib.auth import get_user_model
>>> User = get_user_model()
>>> user = User.objects.get(username='admin@hug.com')
>>> user.set_password('new password')
>>> user.save()
>>> exit()
NB Pourquoi ai-je répondu à cette question avec cette réponse?
Parce que, comme mentionné, User = get_user_model()fonctionnera pour vos propres Usermodèles personnalisés . L'utilisation de from django.contrib.auth.models import Userpuis User.objects.get(username='username')peut générer l'erreur suivante:
AttributeError: Manager isn't available; 'auth.User' has been swapped for 'users.User'Si vous avez oublié de créer un administrateur, commencez par en créer un avec la createsuperusercommande, manage.pypuis modifiez le mot de passe.
Vous pouvez essayer ceci:
1.Modifier le mot de passe du superutilisateur sans console
python manage.py changepassword <username>2.Modifier le mot de passe du superutilisateur via la console
Si vous ne connaissez pas les noms d'utilisateur créés ici. Vous pouvez obtenir les utilisateurs comme décrit par @FallenAngel ci-dessus.
python manage.py shell 
from django.contrib.auth.models import User
usrs = User.objects.filter(is_superuser=True)
#identify the user
your_user = usrs.filter(username="yourusername")[0]
#youruser = usrs.get(username="yourusername")
#then set the passwordCependant dans le cas où vous avez créé votre modèle d'utilisateur indépendant. Un cas simple est lorsque vous souhaitez utiliser le courrier électronique comme nom d'utilisateur au lieu du nom d'utilisateur par défaut. Dans ce cas, votre modèle utilisateur vit quelque part, comme your_accounts_app.models, alors la solution ci-dessus ne fonctionnera pas. Dans ce cas, vous pouvez utiliser à la place la méthode get_user_model
from django.contrib.auth import get_user_model 
super_users = get_user_model().objects.filter(is_superuser=True)
#proceed to get identify your user
# and set their user passwordsi vous oubliez votre administrateur, vous devez créer un nouvel utilisateur en utilisant
python manage.py createsuperuser <username>et pour le mot de passe, il y a une commande CLI changepassword  pour django pour changer le mot de passe de l'utilisateur
python manage.py changepassword <username>OU
django-admin changepassword <username>OU Exécutez ce code dans Django env
from django.contrib.auth.models import User
u = User.objects.get(username='john')
u.set_password('new password')
u.save()Une autre chose à noter est de définir le statut de votre utilisateur is_staffcomme actif. Du moins, c'est ce qui fait que ça marche pour moi. Pour plus de détails, j'en ai créé un autre superusercomme les gens l'ont expliqué ci-dessus. Ensuite, je vais dans la table de base de données auth_useret recherche ce nom d'utilisateur pour m'assurer que son is_staffindicateur est défini sur 1. Cela m'a finalement permis de me connecter au adminsite.
Créez un nouveau superutilisateur avec la commande "python manage.py createuperuser". Connectez-vous en tant que nouveau super utilisateur. Cliquez sur le lien "utilisateurs". Cliquez ensuite sur l'utilisateur que vous souhaitez supprimer. cliquez sur supprimer l'utilisateur à la fin de la page du formulaire.
Remarque - Le processus ci-dessus apportera des modifications aux journaux d'activité effectués par cet utilisateur particulier.
python manage.py changepassword nom d'utilisateur
utilisation
python manage.py dumpdata
puis regardez à la fin vous trouverez le nom d'utilisateur
Je pense que la meilleure façon Sur la ligne de commande
python manage.py crée un superutilisateur