在Django中,按照推荐的设置,一个UserProfile实例由OneToOneField与其User实例链接。
class UserProfile(models.Model):
user = models.OneToOneField(User)
data = ...
在 View 内检索用户和个人资料的最有效方法是什么?
我可以执行一次select_related()内部联接查询,以使一个数据库命中两个对象吗?还是总是归结为两个单独的电话?可能,甚至在调用 View 之前,Django的身份验证中间件仍会检索用户实例……有人知道吗?
最佳答案
可以使用get_profile()
检索用户个人资料。
请参阅文档:https://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information-about-users