Skip to main content
 首页 » 编程设计

python之为什么不在 Django REST 中扩展用户

2024年11月01日29sxdcgaq8080

我正在使用 Django REST 为我的应用创建用户。

我看到的每个地方,他们都为用户扩展了 AbstractBaseUser。 我尝试扩展用户模型,它似乎工作得很好。

我有一个扩展 Django 用户的 PersonalAbstractUser。然后,Worker 和 Client 扩展 PersonalAbstractUser。 到目前为止,登录和自定义权限似乎工作得很好,但当我看到没有其他人扩展用户时,我开始担心了...

这是为什么呢?我错过了什么吗?

请您参考如下方法:

这不是关于 Django REST 的问题,而是关于 Django 本身的问题。

直接扩展User对象的问题是它已经是一个具体的模型,所以扩展它会用到多表继承。这通常不是一个好主意 - 特别是如果您要进一步扩展它。

AbstractUser 是一个抽象模型,但(与 AbatractBaseUser 不同)包含了 User 定义的所有字段。你应该使用它。