首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django-registration将清除所有无效的字段

Django-registration将清除所有无效的字段
EN

Stack Overflow用户
提问于 2011-05-01 23:11:56
回答 1查看 162关注 0票数 1

我已经使用django-registration创建了一个注册系统。我已经扩展了RegistrationFormTermsOfService,如下所示。它工作得很好,除非有任何字段无效,页面会被刷新,所有字段都会被清除,因此用户必须重新输入所有内容。这是django注册的默认行为吗?我真的不想更改django注册码。有没有办法让它正常工作,让字段填充用户到目前为止输入的内容?

代码语言:javascript
复制
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')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-02 01:20:40

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

您是否正在将表单传递给注册视图?

你的url.py里有这样的东西吗?

代码语言:javascript
复制
url(r'^register/$', 'registration.views.register', {'form_class':UserCreationFormExtended}),

你定义的Meta类对我来说似乎没有用,你真的需要它吗?init也是非常无用的,因为你可以用下面的代码得到同样的结果:

代码语言:javascript
复制
email = forms.EmailField(label=("Email"), required= True, help_text = "We'll send...")

但代码更少。

希望它能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5849214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档