在Django中使用自定义字段扩展用户模型

用自定义字段扩展User模型(与Django的身份验证应用程序捆绑在一起)的最佳方法是什么?我也可能希望使用电子邮件作为用户名(用于身份验证)。

回答:

做到这一点确实是Django推荐的方法是通过OneToOneField(User)属性。

扩展现有的用户模型

如果你希望存储与相关的信息User,则可以对包含其他信息字段的模型使用一对一关系。这种一对一模型通常称为配置文件模型,因为它可能存储有关站点用户的与身份验证无关的信息。

也就是说,扩展django.contrib.auth.models.User和替换它也可以…

替代自定义用户模型

某些项目可能具有身份验证要求,而Django的内置User模型并不总是适用于此。例如,在某些站点上,使用电子邮件地址代替你的用户名作为你的识别令牌更有意义。

[Ed:随后出现两个警告和一个通知,并指出这太过激烈了。]

我绝对不会在Django源代码树中更改实际的User类和/或复制和更改auth模块。

以上是 在Django中使用自定义字段扩展用户模型 的全部内容, 来源链接: utcz.com/qa/403540.html

回到顶部