我有这个模型
class UserProfile(models.Model):
user = models.OneToOneField(User)
role = models.CharField(max_length=30)
如果我收到数据username
, firstname
, lastmame
, email,passsword
, role
, 鉴于“角色”不在User model
. 它在UserProfile model
。
我有这个模型
class UserProfile(models.Model):
user = models.OneToOneField(User)
role = models.CharField(max_length=30)
如果我收到数据username
, firstname
, lastmame
, email,passsword
, role
, 鉴于“角色”不在User model
. 它在UserProfile model
。
这是非常基本的,但它有效,我猜你正在使用 DjangoUser
模型?
user = User.objects.create_user(username, email, password)
user.first_name = firstname
user.last_name = lastname
user.save()
user_profile, created = UserProfile.objects.create_or_create(user=user, role=role)
如果您发现自己经常这样做,我建议您objects
使用自定义管理器方法覆盖管理器。
class UserProfileManager(models.Manager):
def create_profile(self, user, role):
profile = self.create(user=user, role=role)
return profile
然后你可以用这个来调用它:
profile = UserProfile.objects.create_profile(user, role)