从 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 为任何现有用户重置密码,然后他们应该能够登录。
我有一个自定义管理页面:
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 为任何现有用户重置密码,然后他们应该能够登录。