【发布时间】:2017-02-01 14:06:08
【问题描述】:
我得到的错误是:将用户扩展到自定义表单,“user_id”字段是我的自定义表单是“属性”,它链接到表“auth_user”没有保存,我需要两个表相关使用我的自定义表单属性和 django 用户的形状。
我的模型.py
from __future__ import unicode_literals
from django.contrib.auth.models import User
from django.db import models
# Create your models here.
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
Matricula = models.CharField(max_length=25)
forms.py
class SignupForm(forms.ModelForm):
class Meta:
model = Profile
fields = ('first_name', 'last_name', 'Matricula')
#Saving user data
def signup(self, request, user):
user.first_name = self.cleaned_data['first_name']
user.last_name = self.cleaned_data['last_name']
user.Matricula = self.cleaned_data['Matricula']
user.save()
##Save profile
profile = Profile()
Profile.user = user
profile.Matricula = self.cleaned_data['Matricula']
profile.save()
我试过了:
user = models.OneToOneField(User, on_delete=models.CASCADE)
但我得到一个错误: Error
你认为ForeignKey可以使用或者正确使用OneToOneField?
【问题讨论】: