我用附加字段扩展了 authUser
模型。
class ExtendedUser(models.Model):
user = models.OneToOneField(User)
.... #other fields#
我通过以下方式创建它们。
base_user = User(username = 'username', password = 'password', email = 'user@mail.com')
extended_user = ExtendedUser(user = base_user, ...#other fields#)
在那种情况下,user_id
未设置。如果我尝试将 base_user 保存到数据库中,则会发生错误。
extended_user.save()
#Exception traceback
... user_id may not be NULL
困扰我的是我以下解决了这个问题:
extended_user.user_id = extended_user.user.id
这是为我的自定义 OneToOne 关系自动完成的。我是否遗漏了一些关于User
或者这是一个错误?