Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django如何从UserCreationForm中删除密码字段_Django_Passwords - Fatal编程技术网

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

Django如何从UserCreationForm中删除密码字段,django,passwords,Django,Passwords,我想学习一些关于用户身份验证的知识。。我想将UserCreationForm导入到我的forms.py中,不带“密码字段”,然后我想自己创建密码字段和控件。如何排除“密码字段”?谢谢您的帮助。只需在\uuuuu init\uuuu中删除它们,并更新使用它们的方法: class MyUserCreationForm(UserCreationForm): def __init__(self, *args, **kwargs): super(MyUserCreationForm,

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

只需在
\uuuuu init\uuuu
中删除它们,并更新使用它们的方法:

class MyUserCreationForm(UserCreationForm):

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

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

class MyUserCreationForm(UserCreationForm):
    password1 = None # Standard django password input
    password2 = None # Standard django password confirmation input
编辑: 实际上,这只是隐藏表单,但在表单验证过程中会出现问题。
仍在寻找解决方案。

我通过表单验证的方法是:def clean_password(self):返回self.clean_password