2017-07-18 112 views
0

我想添加一些額外的字段用於我的django應用程序中的用戶註冊。用戶可以成功註冊但額外的字段,如first_name,last_name和電子郵件不保存在數據庫中。Django註冊不保存數據庫中的額外字段

請幫助我!

這裏是我的forms.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') 

回答

相關問題