我正在使用Django(1.3版),忘记了管理员用户名和密码。如何重置两者?
是否可以将普通用户变为管理员,然后删除管理员状态?
我正在使用Django(1.3版),忘记了管理员用户名和密码。如何重置两者?
是否可以将普通用户变为管理员,然后删除管理员状态?
当前回答
最好的方法是直接打开你的终端,然后打字
python manage.py createsuperuser
并再次插入另一个密码和用户名 但在大多数情况下,你会丢失一些你之前创建的配置文件。
其他回答
如果你使用的是自定义用户模型
(venv)your_prj $ ./manage.py shell
>>> from customusers.models import CustomUser
>>> CustomUser.objects.filter(is_superuser=True)
>>> user = CustomUser.objects.get(email="somesuper@sys.com")
>>> user.set_password('@NewPwd')
>>> user.save()
>>> exit()
新的设置应该首先运行python manage.py createsuperuser来创建用户。似乎没有默认的用户名密码登录到admin。
除了@JamesO的答案,说明使用
python manage.py changepassword [username]
如果你不记得你的用户名:
1-在你的项目的主目录访问数据库(我使用sqlite3):
sqlite3 db.sqlite3
2-列出auth_user表的内容
SELECT * FROM auth_user ;
3-寻找具有is_superuser = 1的用户,在我的例子中是admin 命令输出的截图(我没有足够的代表点)
这是一个很好的问题。
Python manage.py changepassword user_name
例子:-
python manage.py changepassword mickey
如果在/admin/网站需要一个reset_password链接,这是去的方式: https://docs.djangoproject.com/en/3.2/ref/contrib/admin/#adding-a-password-reset-feature