Cómo resetear el password del usuario administrador de Django sin tener acceso al panel de adminsitración.
Activar la virtual env que tiene instalado la aplicación Django, y si es necesario instalar las dependencias:
source webenv/bin/activate
python3 -m pip install --upgrade pip
pip install -r requirementes.txt
Activar la shell de django:
python3 manage.py shell
/var/www/bernaldev.c
om/laestanciaazul Python 3.9.2 (default, Feb 28 2021, 17:03:44) [GCC 10.2.1 20210110] on linux Type "help", "copyright", "credits" or "license" for more information. (InteractiveConsole)>>>
Consultar la entidad de usuarios, y actualizar el password del usuario administrador:
>>> from django.contrib.auth import get_user_model
>>> list(get_user_model().objects.filter(is_superuser=True).values_list('username',flat=True))
['admin']
>>> user = get_user_model().objects.get(username='admin')
>>> user.set_password(password)
>>> user.save()