我正在使用Django(1.3版),忘记了管理员用户名和密码。如何重置两者?
是否可以将普通用户变为管理员,然后删除管理员状态?
我正在使用Django(1.3版),忘记了管理员用户名和密码。如何重置两者?
是否可以将普通用户变为管理员,然后删除管理员状态?
当前回答
如果你使用的是自定义用户模型
(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 shell
然后在shell中使用以下脚本
from django.contrib.auth.models import User
User.objects.filter(is_superuser=True)
系统会列出你们所有的超级用户。如果你从列表中认出你的用户名:
usr = User.objects.get(username='your username')
usr.set_password('raw password')
usr.save()
然后你设置一个新密码(:
python manage.py changepassword <user_name>
看文档
如果您忘记了您的管理员,那么您需要通过使用创建新用户
python manage.py createsuperuser <username>
对于密码,有CLI命令changepassword用于django修改用户密码
python manage.py changepassword <username>
OR
django-admin changepassword <username>
或者在Django env中运行此代码
from django.contrib.auth.models import User
u = User.objects.get(username='john')
u.set_password('new password')
u.save()
使用"python manage.py createsuperuser"命令创建一个新的超级用户。 以新的超级用户登录。点击“users”链接。然后单击要删除的用户。单击表单页面末尾的delete user。
注意:上述过程将对特定用户所做的活动日志进行更改。
这是一个很好的问题。
Python manage.py changepassword user_name
例子:-
python manage.py changepassword mickey