Python 3.x Django注册不';t在数据库中保存额外字段

Python 3.x Django注册不';t在数据库中保存额外字段,python-3.x,django-forms,django-registration,Python 3.x,Django Forms,Django Registration,我正在尝试在django应用程序中添加一些额外的用户注册字段。用户可以成功注册,但名、姓和电子邮件等额外字段不会保存在数据库中 请帮帮我 这是我的表格.py: class SignUpForm(UserCreationForm): first_name = forms.CharField(max_length=30, required=False, help_text='Optional.') last_name = forms.CharField(max_length=30, required

我正在尝试在django应用程序中添加一些额外的用户注册字段。用户可以成功注册,但名、姓和电子邮件等额外字段不会保存在数据库中

请帮帮我

这是我的表格.py:

class SignUpForm(UserCreationForm):
first_name = forms.CharField(max_length=30, required=False, help_text='Optional.')
last_name = forms.CharField(max_length=30, required=False, help_text='Optional.')
email = forms.EmailField(max_length=254, help_text='Required. Inform a valid email address.')

class Meta:
    model = User
    fields = ('username', 'first_name', 'last_name', 'email', 'password1', 'password2',)

def save(self, commit=True):
    user = super(SignUpForm, self).save(commit=False)
    user.email = self.cleaned_data['email']
    user.first_name = self.cleaned_data['first_name']
    user.last_name = self.cleaned_data['last_name']
    if commit:
        user.save()
    return user
下面是views.py:

class SignUpView(generic.CreateView):
form_class = UserCreationForm
template_name = 'users/signup.html'
success_url = reverse_lazy('users:login')

我很确定它会帮助你: