【问题标题】:How to store additional information about the Users in Django ?如何在 Django 中存储有关用户的附加信息?
【发布时间】:2011-12-15 21:07:59
【问题描述】:

我有几个通知可以从我的Django 应用程序发送给users。这些用户使用django.contrib.auth 应用程序进行管理。

我需要跟踪每个用户是否指定他/她想要收到该通知。

我应该将这些信息保存在哪里?

我打算创建自己的自定义表,但我发现也许我可以将这些信息保存在 auth 模块中的某个位置?

【问题讨论】:

标签: django user-profile django-authentication


【解决方案1】:

用户个人资料是一个不错的选择。

https://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information-about-users

按照所述为您的User 对象设置一个带有OneToOneField 的模型,您可以轻松访问任意额外信息表。

PS:请注意关于配置文件不会自动创建的事实。有一个例子是关于如何在创建User 时使用信号自动创建一个。

【讨论】:

  • +1 表示非常、非常常见和重要的用例。 OneToOneField 使它变得又好又容易。使用配置文件时请注意,外键可以指向实际用户或其配置文件(配置文件中任何外键的相关名称将指向配置文件,而不是用户)。看起来很明显,但如果你不小心,可能会导致有趣的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-26
  • 1970-01-01
  • 1970-01-01
  • 2018-08-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多