我有一个自定义管理页面:
class StripeAdminSite(admin.AdminSite):
...
pass
我已将django.contrib.auth.models
注册到此管理网站:
stripe_admin_site = StripeAdminSite(name='Stripe')
stripe_admin_site.register(User)
现在用户显示在管理页面中,它也让我创建用户(作为东西),但在创建之后,当我尝试使用它们登录仪表板时,它不允许我这样做。
切换回默认管理网站后,我用旧用户密码字段写了这个:
无效的密码格式或未知的散列算法。
现在可以做些什么?
更多/额外信息:How to bring default add user page at django custom admin page?
答案 0 :(得分:2)
问题是你没有用Django的User
注册UserAdmin
模型。这意味着在创建用户时密码未正确散列,因此无法登录。
要使用Django的UserAdmin
,请按以下步骤更改您的代码。
stripe_admin_site = StripeAdminSite(name='Stripe')
from django.contrib.auth.admin import UserAdmin
stripe_admin_site.register(User, UserAdmin)
完成此操作后,您将来不会遇到此问题。
使用更改密码链接重置现有用户的密码,然后他们就可以登录。