自定义Django Admin用户密码更改表单

时间:2019-08-01 05:36:27

标签: django admin

我已经使用AbstractBaseUser自定义了用户模型。

一切正常,但是当我进入Django Admin界面并使用表单来更改用户密码时,除了new password 1new password 2字段外,我还看到了文本框:

image

如何从管理员更改密码表单中删除其电子邮件地址?我可以继承一个特殊的Django形式吗?

1 个答案:

答案 0 :(得分:0)

我认为您必须自定义password_reset视图。 请阅读文档here

如果您想走得更远,则可以覆盖PasswordResetForm

from django.contrib.auth.forms import PasswordResetForm

class FooPasswordResetForm(PasswordResetForm):
    ...

然后更新您的URL,并且不要忘记将您的表单传递给password_reset_form参数:

from django.contrib.auth import views as auth_views
from myapp.forms import FooPasswordResetForm

urlpatterns = [
    ...
    url(
        '^password_reset/',
        auth_views.password_reset,
        {'password_reset_form': FooPasswordResetForm},
    )
]

也请看看这个question 我的答案是从这个问题的答案中得到启发的。