首页 > 解决方案 > Django Query - 返回在模型中至少被引用一次的所有对象

问题描述

我有两个模型。员工和时间表

class Employee(models.Model):
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    phone = models.CharField(max_length=20)


class Scheduled(models.Model):
    title = models.CharField(max_length=50)
    description = models.TextField()
    assigned_employee = models.ForeignKey(Employee, on_delete=models.CASCADE)

我想返回已在计划表中至少引用一次的所有员工。

注意:我已经完成了 2 个查询,但是有没有一种方法可以在一个查询中做到这一点?

标签: djangodjango-models

解决方案


编辑:

看来您不应该使用_set来处理关系,正确答案是:

Employee.objects.filter(scheduled_set__isnull=False)

原来的:

我还没有尝试过,但也许应该可以。

Employee.objects.filter(scheduled_set__isnull=False)


推荐阅读