Django如何从UserCreationForm中删除密码字段

时间:2013-01-12 23:26:46

标签: django passwords

我想学习一些关于用户身份验证的内容..我想将UserCreationForm导入到我的forms.py而没有“密码字段”,然后我想自己创建密码字段和控件。如何排除“密码字段”?谢谢你的帮助。

2 个答案:

答案 0 :(得分:10)

只需在__init__中删除它们并更新使用它们的方法:

class MyUserCreationForm(UserCreationForm):

   def __init__(self, *args, **kwargs):
       super(MyUserCreationForm, self).__init__(*args, **kwargs)
       del self.fields['password1']
       del self.fields['password2']

答案 1 :(得分:0)

您最好的选择是从表单中隐藏它们:

class MyUserCreationForm(UserCreationForm):
    password1 = None # Standard django password input
    password2 = None # Standard django password confirmation input

编辑: 实际上,这只是隐藏表单,但是在表单验证过程中会遇到问题。 仍在寻找解决方案。