创建无法访问管理站点的超级用户

时间:2018-07-13 04:44:52

标签: django django-models

我正在使用以下代码创建管理员用户。但是,该用户无法登录。关于此用户为何无法登录管理网站的任何建议

  user = User.objects.create(username = "joe",first_name="jordan", last_name="...", email="jordan@gmail.com", password="admin123",is_staff=True,is_superuser=True)

用户名是joe,密码是admin123,但是该用户无法登录

1 个答案:

答案 0 :(得分:3)

Django存储哈希密码。由于您传递给数据库普通密码,因此Django无法验证用户身份。创建新用户以对密码进行哈希处理时,应使用set_password

user = User(username = "joe",first_name="jordan", last_name="...", email="jordan@gmail.com",is_staff=True,is_superuser=True)
user.set_password("admin123")
user.save()

或者您可以使用create_superuser方法:

user = User.objects.create_superuser(username = "joe",first_name="jordan", last_name="...", email="jordan@gmail.com", password="admin123")