我有几个通知可以从我的Django
应用程序users
发出。这些用户使用django.contrib.auth
应用进行管理。如何在Django中存储关于用户的其他信息?
我需要跟踪每个用户是否指定他/她想要获得该通知。
我应该在哪里保存这些信息?
我打算创建自己的自定义表格,但我看过了,或许我可以将这些信息保存在auth
模块的某处?
我有几个通知可以从我的Django
应用程序users
发出。这些用户使用django.contrib.auth
应用进行管理。如何在Django中存储关于用户的其他信息?
我需要跟踪每个用户是否指定他/她想要获得该通知。
我应该在哪里保存这些信息?
我打算创建自己的自定义表格,但我看过了,或许我可以将这些信息保存在auth
模块的某处?
用户配置文件是一个很好的选择。
https://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information-about-users
描述设置了一个OneToOneField
模型,以你的User
对象,你很容易获得的额外信息的任意表。
PS:注意关于配置文件不会自动创建的事实。有一个关于如何在创建User
时使用信号自动创建一个示例。
+1对于一个非常,非常常见和重要的用例。 OneToOneField使它变得更加简单。在使用配置文件时,请注意外键可指向实际用户或其配置文件(并且配置文件中的任何外键的related_name将指向配置文件,而不是用户)。看起来很明显,但如果你不小心可能会引发趣事。 – kungphu 2011-12-16 01:24:52
确切的复制:http://stackoverflow.com/questions/2886987/adding-custom-fields-to-users-in-django ...并在文档中进行了很好的解释... – Stefano 2011-12-16 11:04:34