Django过滤结果,其中一个或多个反向外键满足条件

时间:2018-11-01 19:12:55

标签: django filter orm foreign-keys

可以说我有以下(简化的)模型:

class Job(models.Model):
    name = models.CharField(max_length=255)
​    
class JobDateStatus(models.Model)
    job = models.ForeignKey(Model, on_delete=models.CASCADE)
    date = models.DateField()
    status = models.CharField(max_length=6)

是否有一种方法可以选择所有Job子级中的任何一个(一个或多个)具有特定状态的所有JobDateStatus对象?例如:

active_jobs = Job.objects.filter(<ONE OR MORE OF jobdatestatus_set HAS status='active'>)

1 个答案:

答案 0 :(得分:2)

这就是普通的双下划线语法。

Job.objects.filter(jobdatestatus__status='active')