django-registrationを使用して登録システムを作成しました。以下に示すように、RegistrationFormTermsOfServiceを拡張しました。いずれかのフィールドが無効である場合を除いて、すべて正常に機能します。ただし、ページが更新され、すべてのフィールドがクリアされるため、ユーザーはすべてを再入力する必要があります。これはdjango-registrationのデフォルトの動作ですか?django-registrationコードを変更したくありません。これを機能させて、ユーザーがこれまでに入力した内容をフィールドに入力したままにする方法はありますか?
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')