Django:从查询集中查找所有 one_to_one 关系

我有一个查询集users,它们是模型的实例User。第二个名为的模型Patient有一个OneToOneField名为user:


user = OneToOneField('users.User', on_delete=CASCADE, related_name="patient",

                      blank=True, null=True)

目标是从用户的查询集中获得所有患者的查询集。我认为通过使用related_name就足够了,意思是:


queryset_of_users=User.objects.filter(main_group='patients')

queryset_of_patients=queryset_of_users.patient

但似乎不是这样,因为我收到以下错误:


AttributeError:“QuerySet”对象没有“患者”属性


有任何想法吗?


慕田峪7331174
浏览 101回答 1
1回答

holdtom

找到了,它通过进行第二次查询来工作:queryset_of_patients=Patient.objects.filter(user__in=queryset_of_users)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python