Cómo restablecer la contraseña de administrador de Django?
Estoy usando Django (versión 1.3) y he olvidado tanto el nombre de usuario como la contraseña de administrador. Cómo restablecer ambos?
Y ¿es posible convertir a un usuario normal en administrador y luego eliminar el estado de administrador?
14 answers
manage.py changepassword <user_name>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-04-04 14:58:14
-
python manage.py createsuperuser
creará otro superusuario, usted será capaz de iniciar sesión en admin y rememder su nombre de usuario. - Sí, por qué no.
Para dar 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()
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-02-27 19:26:30
Puede probar a través de la consola:
python manage.py shell
Luego use el siguiente script en el shell
from django.contrib.auth.models import User
User.objects.filter(is_superuser=True)
Le mostrará una lista de todos los superusuarios en el sistema. si reconoce su nombre de usuario de la lista:
usr = User.objects.get(username='your username')
usr.set_password('raw password')
usr.save()
Y se establece una nueva contraseña (:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-09-07 07:43:07
Puede crear un nuevo superusuario con createsuperuser
comando.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-06 20:46:52
Esta es una muy buena pregunta.
Python manage.py changepassword user_name
Ejemplo: -
python manage.py changepassword mickey
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-13 10:31:01
La nueva configuración debe ejecutarse primero 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.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-01-18 11:31:07
También puede haber respondido a una pregunta de configuración incorrecta y tener cero miembros del personal. En cuyo caso diríjase a postgres:
obvioustest=# \c [yourdatabasename]
obvioustest=# \x
obvioustest=# select * from auth_user;
-[ RECORD 1 ]+-------------
id | 1
is_superuser | f
is_staff | f
...
Para arreglar, edite directamente:
update auth_user set is_staff='true' where id=1;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-07-06 20:45:40
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
- Navegue a su directorio raíz es decir, donde usted "manage.py" el archivo se encuentra usando su consola u otra aplicación como Git.
- Recuperar la shell de Python usando el comando "python manage.py shell".
- Importe el Modelo User escribiendo el siguiente comando "de django.contrib.auth.usuarios de importación de modelos"
- Obtenga todos los usuarios escribiendo el siguiente comando "usuarios = Usuario.objeto.all ()"
Imprimir una lista de los usuarios Para los usuarios de Python 2 utilice el comando " imprimir usuarios" Para los usuarios de Python 3 utilice el comando " imprimir (usuarios)" El primer usuario suele ser el administrador.
-
Seleccione el usuario que desea cambiar su contraseña, por ejemplo,
"user = users[0]"
-
Establecer la contraseña
user.set_password('name_of_the_new_password_for_user_selected')
-
Guardar el nuevo contraseña
"user.save()"
Inicie el servidor e inicie sesión con el nombre de usuario y la contraseña actualizada.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-02-28 11:45:48
Si olvidó crear usuario administrador primero construya uno con el comando createsuperuser
en manage.py
luego cambie la contraseña.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-21 11:28:28
Puedes probar esto:
1.Cambiar la contraseña de superusuario sin consola
python manage.py changepassword <username>
2.Cambiar la contraseña del superusuario a través de la consola
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-30 20:24:36
En caso de que no conozca los nombres de usuario creados aquí. Puede obtener los usuarios como se describe en @FallenAngel anteriormente.
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 your_accounts_app.modelos entonces la solución anterior no funcionará. En este caso, puede usar 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
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-01 16:52:33
Otra cosa que vale la pena señalar 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 la gente explicó anteriormente. Luego voy a la tabla de la base de datos auth_user
y busco ese nombre de usuario para asegurarme de que su bandera is_staff
esté establecida en 1
. Eso finalmente me permitió iniciar sesión en el sitio admin
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-14 19:32:57
Python manage.py nombre de usuario de changepassword
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-02 09:19:04
Crear un nuevo superusuario con el comando "python manage.py createsuperuser". Inicie sesión como el nuevo superusuario. Haga clic en el enlace' usuarios'. A continuación, 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.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-03 14:59:50