Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.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注册将清除所有无效字段_Django_Django Registration - Fatal编程技术网

Django注册将清除所有无效字段

Django注册将清除所有无效字段,django,django-registration,Django,Django Registration,我使用django注册创建了一个注册系统。我已按如下所示扩展了RegistrationFormTermsof服务。这一切工作正常,除非任何字段无效,否则页面将刷新,所有字段将被清除,因此用户必须再次输入所有内容。这是django注册的默认行为吗?我真的不想更改django的注册码。是否有任何方法可以让它正常工作,从而让字段填充用户迄今为止输入的内容 class UserCreationFormExtended(RegistrationFormTermsOfService): email

我使用django注册创建了一个注册系统。我已按如下所示扩展了RegistrationFormTermsof服务。这一切工作正常,除非任何字段无效,否则页面将刷新,所有字段将被清除,因此用户必须再次输入所有内容。这是django注册的默认行为吗?我真的不想更改django的注册码。是否有任何方法可以让它正常工作,从而让字段填充用户迄今为止输入的内容

class UserCreationFormExtended(RegistrationFormTermsOfService):
    email = forms.EmailField(label=("Email"), help_text = "We'll send...")
    username = forms.RegexField(
        label='Username:',
        max_length=35,
        min_length=6,
        regex=r'^[\w-]{6,35}$',
        help_text = 'Between 6 and 35 characters',
        error_message = 'Enter between 6 and 35 alphanumeric characters.')

    password1 = forms.RegexField(
        max_length=30,
        min_length=6,
        regex=r'^[\w-]{6,35}$',
        help_text = 'Between 6 and 35 characters',
        error_message = 'Enter between 6 and 35 characters.')

    def __init__(self, *args, **kwargs):
        super(UserCreationFormExtended, self).__init__(*args,
        **kwargs)
        self.fields['email'].required = True

    class Meta:
        model = User
        fields = ('username', 'email')

Django注册不会“刷新”表单,如果输入无效,视图将返回填充了已发布数据的表单

您正在将表单传递给注册视图吗

在url.py中是否有类似的内容

url(r'^register/$', 'registration.views.register', {'form_class':UserCreationFormExtended}),
你定义的元类对我来说似乎没用,你真的需要吗? init也非常无用,因为您可以通过以下方式获得相同的结果:

email = forms.EmailField(label=("Email"), required= True, help_text = "We'll send...")
但代码更少

希望有帮助:)