2016-07-27 42 views
0

我想將基本信息保存到用戶,並將其他信息保存到其他表格。我不知道如何將電子郵件保存到其他heepoo表的user_id字段。你能幫我嗎?註冊用戶信息以分開表格

models.py

class School(models.Model): 
    id = models.IntegerField(primary_key=True) 
    Name = models.CharField(max_length=50, null=False) 

    def delete(self, *args, **kwargs): 
     self.Mascot.delete() 
     super(School, self).delete(*args, **kwargs) 
    def __str__(self): 
     return self.Name 

forms.py

class UserForm(forms.ModelForm): 
    email = forms.EmailField(max_length=50, required=True) 
    password = forms.CharField(widget=forms.PasswordInput()) 
    username = forms.HiddenInput() 
    class Meta: 
     model = User 
     fields = ('email', 'password',) 

class RegisterForm(forms.ModelForm): 
    class Meta: 
     model = HeepooUser 
     exclude = ('allow_phone') 

views.py

def register(request): 
    registered = False 
    if request.method == 'POST': 
     user_form = UserForm(request.POST) 
     profile_form = RegisterForm(request.POST) 

     if user_form.is_valid() and profile_form.is_valid(): 
      user = user_form.save(commit=False) 
      user.set_password(user.password) 
      user = user_form.save() 

      profile = profile_form.save(commit=False) 
      profile.user = user 
      profile = profile_form.save() 

      registered = True 

所有最優秀的。

回答

0

當然很多方法的方式是有喜歡就是OneToOneField到用戶表

class Profile(models.Model): 
    user = models.OneToOneField(User, on_delete=models.CASCADE) 
    additional_info = models.CharField(max_length=200) 
+0

@MrKarl你能縮進代碼?我會看看... –

+0

感謝Raja解釋。我還有一個問題:D如何將電子郵件地址保存到auth_user表中的用戶名字段? – MrKarl

+0

@MrKarl這次你問的是不同的問題......!爲什麼你想在用戶名字段中保存電子郵件? –