如何在 Django 中查询多个 objects 的自引用查询

How to query self referencing queries in Django for multiple objects

抱歉标题不好。我希望我能在这里更好地阐述它。我有一个模型 class 如下

class Employee(models.Model):
    name = models.CharField(max_length=10)
    manager = models.ForeignKey('Employee', null=True, on_delete=models.DO_NOTHING)

我想进行查询以查找由经理列表管理的所有员工。

像这样

SELECT
r.name
FROM employee l
JOIN employee r
ON l.id = r.manager_id
WHERE l.name in ('manger_1', 'manager_2');

如何使用 Django ORM 实现此目的?

您可以使用 __in lookup [Django-doc]:

进行过滤
Employee.objects.filter(<b>manager__name__in=['manager_1', 'manager_2']</b>)