我有三个Django模型存在于层次结构中:
Protocol
- >有Test
s
Test
- >有Case
s
Test
模型具有Protocol
的外键,Case
模型具有Test
和Protocol
的外键。一个非常简单的结构。
这些模型中的每一个都有一个名为owner的属性,我应用中的任何用户都可以拥有任何内容。我想要做的是创建一个查询,为我提供这三个模型的任何实例的所有所有者的唯一集合。我无法在Django中找到一个很好的方法。任何帮助表示赞赏。
答案 0 :(得分:2)
如果不单独查询所有模型,就无法做到。
User.objects.filter(Q(protocol__isnull=False) | Q(test__isnull=False) | Q(case__isnull=False)