2

这是我的问题伙计们。我有一个商店用户,可以登录到他的网站并查看与他的商店相关的各种数据。在他的商店里,假设有 10 台向他发送账单的安卓计费设备。现在我需要在 Django REST 框架中创建一个自定义身份验证,它将使用它们的id_numbertype字段(不存储用户的用户名和密码)对 android 设备进行身份验证,并为它们(每个单独)分配一个令牌,并允许它们进行 POST、GET、PUT 等。 。 那可能吗?

Store(models.Model):
    user = models.ForeignKey(User, default=1)

AndroidDevice(models.Model):
    id_number = models.CharField()
    type = models.CharField()
    store= models.ForeignKey(Store)
4

2 回答 2

0

我最终做的是在我的模型中添加另一个字段,与用户模型的 OneToOne 关系。这样我就能够使用 DRF 的内置身份验证。此外,我覆盖了该模型的保存方法,因此当创建新实例时,它会创建一个新的用户对象,其用户名/密码设置为 id_number/type 字段中的值。

于 2017-01-20T11:47:38.240 回答
0

对的,这是可能的

注意:使用自定义身份验证并创建与您的 AndroidDevice 模型相关的您自己的令牌模型,而不是用户模型或您需要做的任何事情(多个令牌、过期令牌等)。阅读 DRF 源代码以获得灵感 :)

希望这可以帮助

于 2016-08-31T15:57:57.527 回答