Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从django自定义管理页面创建的用户可以';t登录_Python_Django_Django Admin - Fatal编程技术网

Python 从django自定义管理页面创建的用户可以';t登录

Python 从django自定义管理页面创建的用户可以';t登录,python,django,django-admin,Python,Django,Django Admin,我有一个自定义管理员页面: class StripeAdminSite(admin.AdminSite): ... pass 我已将django.contrib.auth.models注册到此管理网站: stripe_admin_site = StripeAdminSite(name='Stripe') stripe_admin_site.register(User) 现在用户出现在管理页面中,它还允许我创建用户(作为素材),但创建后,当我尝试使用他们登录到仪表板时,它不

我有一个自定义管理员页面:

class StripeAdminSite(admin.AdminSite):
     ...
     pass
我已将
django.contrib.auth.models
注册到此管理网站:

stripe_admin_site = StripeAdminSite(name='Stripe')
stripe_admin_site.register(User)
现在用户出现在管理页面中,它还允许我创建用户(作为素材),但创建后,当我尝试使用他们登录到仪表板时,它不允许我这样做

切换回默认管理员站点后,我在我的旧用户密码字段中写入了以下内容:

密码格式无效或哈希算法未知

现在该怎么办


更多/额外信息:

问题在于您没有向Django的
UserAdmin
注册
User
型号。这意味着在创建用户时密码没有正确散列,因此他们无法登录

要使用Django的
UserAdmin
,请按如下方式更改代码

stripe_admin_site = StripeAdminSite(name='Stripe')
from django.contrib.auth.admin import UserAdmin
stripe_admin_site.register(User, UserAdmin)
一旦这样做了,以后添加的新用户就不会遇到这个问题

使用更改密码链接重置任何现有用户的密码,然后他们应该能够登录