在Django中建模用户设置
我想在我的应用程序中为每个用户添加一些额外的设置(除了像 is_staff、is_admin 这些)。基本上,我希望有不同的设置来定制他们的使用体验(比如:不显示提示信息、结果表格中显示多少行、其他开关来控制功能的开启或关闭)。
有没有什么好的方法来添加这些类型的设置,或者有没有示例模型可以做到这一点,而不去修改 Django 的用户对象(以前当我需要快速添加用户属性时,我只是把它加到 Django 的源代码里,但我知道这显然是个糟糕的主意)。
所以当有人成功登录时,我会获取这个用户的设置并把它们放到会话中。
我不太确定有没有什么好的方法或最佳实践来做到这一点。
2 个回答
0
要么把它们放在用户资料模型里,要么创建一个新的模型,并与User
建立一对一的关系。
5
正如之前所说的,使用 UserProfile。如果你想在同一个字段里存很多标志,可以用 django-bitfield。