在django中使用User.objects.get_或_create()会给出无效的密码格式吗? python manage.py shell >>>从django.contrib.auth.models导入用户 >>>u=User.objects.get\u或\u create(username=“testuser2”,password=“123”) >>>u (,对)
似乎它正确地创建了在django中使用User.objects.get_或_create()会给出无效的密码格式吗? python manage.py shell >>>从django.contrib.auth.models导入用户 >>>u=User.objects.get\u或\u create(username=“testuser2”,password=“123”) >>>u (,对),django,django-admin,django-users,Django,Django Admin,Django Users,似乎它正确地创建了用户。但当我登录到管理员在 http://127.0.0.1:8000/admin/auth/user/3/, 我看到这条消息的密码 密码格式无效或哈希算法未知。 屏幕截图也附上。为什么是这种方式,以及如何从shell创建用户对象。我实际上正在编写一个填充脚本,为我的项目创建多个用户 您需要使用 例如: 几乎正确,只是我们不想设置现有用户的密码 from django.contrib.auth.models import User user, created = User.ob
用户
。但当我登录到管理员在
http://127.0.0.1:8000/admin/auth/user/3/
,
我看到这条消息的密码
密码格式无效或哈希算法未知。
屏幕截图也附上。为什么是这种方式,以及如何从shell创建用户对象。我实际上正在编写一个填充脚本,为我的项目创建多个用户
您需要使用
例如:
几乎正确,只是我们不想设置现有用户的密码
from django.contrib.auth.models import User
user, created = User.objects.get_or_create(username="testuser2")
user.set_password('123')
user.save()
正如报告中提到的
创建用户最直接的方法是使用包含的helper函数
from django.contrib.auth.models import User
user, created = User.objects.get_or_create(username="testuser2")
user.set_password('123')
user.save()
from django.contrib.auth.models import User
user, created = User.objects.get_or_create(username="testuser2")
if created:
# user was created
# set the password here
user.set_password('123')
user.save()
else:
# user was retrieved
from django.contrib.auth.models import User
user = User.objects.create_user(username="testuser2",password="123")