usuarios recuperar por gestion correo contraseña django admin

por - recuperar contraseña django



¿Cómo restablecer la contraseña de administrador de Django? (14)

Estoy usando Django (versión 1.3) y he olvidado el nombre de usuario y la contraseña del administrador. ¿Cómo reiniciar ambos?

¿Y es posible convertir a un usuario normal en administrador y luego eliminar el estado de administrador?


  1. python manage.py createsuperuser creará otro superusuario, podrá iniciar sesión en admin y recordar su nombre de usuario.
  2. Si por qué no.

Para otorgar privilegios a un usuario normal, abra un shell con python manage.py shell e intente:

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


Cree un nuevo superusuario con el comando "python manage.py creauperuser". Inicie sesión como el nuevo superusuario. Haga clic en el enlace ''usuarios''. Luego haga clic en el usuario que desea eliminar. haga clic en eliminar usuario al final de la página del formulario.

Nota: el proceso anterior realizará cambios en los registros de actividad realizados por ese usuario en particular.


En caso de que no sepa los nombres de usuario como se crea aquí. Puede obtener los usuarios como se describe en @FallenAngel arriba.

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 password

Sin embargo, en el caso de que haya creado su modelo de usuario independiente. Un caso simple es cuando desea utilizar el correo electrónico como nombre de usuario en lugar del nombre de usuario predeterminado. En cuyo caso, su modelo de usuario vive en algún lugar, como su_cuentas_contactos.modelos, entonces la solución anterior no funcionará. En este caso, puede utilizar el método 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 password


Esta es una muy buena pregunta.

python manage.py changepassword nombre_usuario

Ejemplo: -

python manage.py changepassword mickey


Otra cosa que vale la pena mencionar es establecer el estado de su usuario is_staff como activo. Al menos, eso es lo que hace que funcione para mí. Para más detalles, creé otro superuser como las personas explicadas anteriormente. Luego voy a la base de datos auth_user y busco ese nombre de usuario para asegurarme de que su is_staff esté establecida en 1 . Eso finalmente me permitió iniciar sesión en el sitio de admin .



Puedes probar a través de la consola:

python manage.py shell

luego use el siguiente script en shell

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

Enumeraremos a todos los superusuarios en el sistema. Si reconoces tu nombre de usuario de la lista:

usr = User.objects.get(username=''your username'') usr.set_password(''raw password'') usr.save()

y establece una nueva contraseña (:


Puedes probar esto:

1. Cambiar contraseña de superusuario sin consola

python manage.py changepassword <username>

2. Cambiar la contraseña del superusuario a través de la consola


Si olvidó crear un usuario administrador, primero compile uno con el comando manage.py en manage.py luego cambie la contraseña.


También es posible que haya respondido incorrectamente una pregunta de configuración y que no tenga miembros del personal. En cuyo caso dirígete a postgres:

obvioustest=# /c [yourdatabasename] obvioustest=# /x obvioustest=# select * from auth_user; -[ RECORD 1 ]+------------- id | 1 is_superuser | f is_staff | f ...

Para corregir, edite directamente:

update auth_user set is_staff=''true'' where id=1;


Una de las mejores formas de recuperar el nombre de usuario y la contraseña es verlos y actualizarlos. El modelo de usuario proporciona una manera perfecta de hacerlo.

En este caso, estoy usando Django 1.9.

  1. Navegue a su directorio raíz i, e. donde se encuentra el archivo "manage.py" utilizando su consola u otra aplicación como Git.
  2. Recupere el shell de Python usando el comando "python manage.py shell".
  3. Importe el Modelo de Usuario escribiendo el siguiente comando "desde django.contrib.auth.models importar Usuario"
  4. Obtenga todos los usuarios escribiendo el siguiente comando "users = User.objects.all ()"
  5. Imprima una lista de los usuarios. Para usuarios de Python 2 use el comando "imprimir usuarios" Para usuarios de Python 3 use el comando "imprimir (usuarios)" El primer usuario suele ser el administrador.

  6. Seleccione el usuario que desea cambiar su contraseña, por ejemplo

    "user = users[0]"

  7. Establecer la contraseña

    user.set_password(''name_of_the_new_password_for_user_selected'')

  8. Guarda la nueva contraseña

    "user.save()"

Inicie el servidor e inicie sesión con el nombre de usuario y la contraseña actualizada.


python manage.py changepassword nombre de usuario


la nueva configuración primero debe ejecutar python manage.py createsuperuser para crear usuario. Parece que no hay una contraseña de nombre de usuario predeterminada para iniciar sesión en admin.


manage.py changepassword <user_name>

ver docs