我正在使用Django(1.3版),忘记了管理员用户名和密码。如何重置两者?
是否可以将普通用户变为管理员,然后删除管理员状态?
我正在使用Django(1.3版),忘记了管理员用户名和密码。如何重置两者?
是否可以将普通用户变为管理员,然后删除管理员状态?
当前回答
可使用createsuperuser命令创建新的超级用户。
其他回答
Python manage.py createsuperuser将创建另一个超级用户,您将能够登录到admin并记住您的用户名。 是的,为什么不呢?
要赋予普通用户权限,请使用python manage.py shell打开shell并尝试:
from django.contrib.auth.models import User
user = User.objects.get(username='normaluser')
user.is_superuser = True
user.save()
只需在命令行中输入以下命令:
python manage.py changepassword yourusername
除了@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 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()
然后你设置一个新密码(:
可使用createsuperuser命令创建新的超级用户。