如何扩展使用AbstractBaseUser创建的现有自定义用户模型,使其具有多种用户类型,例如客户,培训师和作者?

我有一个基于Django doc创建的现有自定义用户模型,该模型具有基于电子邮件的身份验证。

我想将模型扩展为具有多种用户类型,例如客户,培训师和作者。

我不确定该如何进行,最好的扩展方式是什么?

此外,我是否已对 AbstractBaseUser 选择了正确的选择,还是应该使用 AbstractUser 类。

yang130sam 回答:如何扩展使用AbstractBaseUser创建的现有自定义用户模型,使其具有多种用户类型,例如客户,培训师和作者?

将您的MyUser类重命名为MyUserBase或MyUserAbstract,然后在此类中

class MyUserBase(AbstractBaseUser):
  class Meta:
    abstract = True
  .
  .
  .

现在您可以扩展它:

然后重新创建MyUser类,如下所示:

class MyUser(MyUserBase):
  pass

和其他类似的模型:

class Trainer(MyUserBase):
  ... #other properties

class Customer(MyUserBase):
  ... #other properties
本文链接:https://www.f2er.com/2978620.html

大家都在问