从 Django 自定义管理页面创建的用户无法登录

Created User from django custom admin page can't login

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

class StripeAdminSite(admin.AdminSite):
     ...
     pass

我已经django.contrib.auth.models注册到这个管理站点:

stripe_admin_site = StripeAdminSite(name='Stripe')
stripe_admin_site.register(User)

现在用户出现在管理页面中,它也让我创建用户(作为东西),但是创建后当我尝试使用它们登录到仪表板时它不允许我这样做。

切换回默认管理站点后,我在我的旧用户密码字段中写了这个:

Invalid password format or unknown hashing algorithm.

现在可以做什么?

More/Extra 信息:

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

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

stripe_admin_site = StripeAdminSite(name='Stripe')
from django.contrib.auth.admin import UserAdmin
stripe_admin_site.register(User, UserAdmin)

完成此操作后,您以后添加的新用户将不会遇到此问题。

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