Django ORM. How to check the values of individual related entities?
I have a job model
class Job(models.Model):
job_id = models.PositiveIntegerField(null=True, blank=True, editable=False,
help_text="ID in Rockhopper database",
verbose_name='RH ID')
job_date = models.DateField(null=True, blank=True, editable=False, verbose_name='RH Date')
and stop model
class Stop(models.Model):
"""
This model describes stop. One job can contain two or three stops.
"""
job = models.ForeignKey(to=Job, on_delete=models.CASCADE, related_name='stops')
required_at = models.DateTimeField(null=True, blank=True, editable=False)
stop_number = models.PositiveSmallIntegerField(
validators=(MinValueValidator(1), MaxValueValidator(3))
)
How can I select the jobs by checking the values only for stops with stop_number=1 and stop_number=2
jobs = Job.objects.filter(
stops__required_at__range=(dt_min, dt_min + datetime.timedelta(days=1)),
)