django - 有没有办法将 django 管理员(超级用户)与普通用户分开?
问题描述
在我的 Django Rest Framework api 中,我没有与我的 api 交互的人类用户,但我想对这些机器用户使用用户身份验证。但是,AbstractBaseUser 仍然使用所需的电子邮件和用户名(这对我的机器用户没有意义)将我锁定在很多地方。另外,我希望有人工管理员(超级用户),但是通过使用 AbstractBaseUser 进行自定义,超级用户也会发生变化。我可以将用于身份验证的用户与我想在管理员中使用的超级用户分开吗?
我已经尝试在我的机器用户模型中使用 OneToOne 链接与用户作为配置文件,但这仍然意味着我需要符合 django 的用户。另外,我尝试使用 AbstractBaseUser 但这会产生上述问题。
应该是我的用户模型的模型,因为这会创建另一个资源(收据)
class ReceiptMachine(models.Model):
machine_user = models.OneToOneField('ReceiptUser', on_delete=models.CASCADE)
machine_id = models.UUIDField(verbose_name='id of receipt machine', default=uuid.uuid4, editable=False, unique=True)
store = models.ForeignKey('Store', on_delete=models.CASCADE, to_field='store_id')
class ReceiptUser(AbstractBaseUser):
?
所以我想通过 Django 用户使用这个模型作为我的身份验证,但我也想保留普通的管理员超级用户。
解决方案
推荐阅读
- javascript - 是否可以在 Javascript 中取消对模块的要求?
- protractor - 如何将“异步函数()”集成到量角器控制流中?
- php - 无法在另一个 PHP 中实例化一个类
- ssis - 使用派生列作为尾随零
- cocoa - 核心文字 CTFontGetBoundingRectsForGlyphs() 是要慢
- python-3.x - Python xlsx 和网页抓取
- ios - iOS 自动布局最大宽度
- android - 即使应用程序关闭,我如何发送通知?
- java - @SpringBootApplication 和 @ComponentScan 不能一起工作(bean 配置)
- javascript - 淡入或淡出取决于活动课程,淡入作品,淡出不