Фильтровать модель с помощью foreignKey

У меня есть эти 2 модели:

class Canva(models.Model):
    name = models.CharField(null=True, blank=True, max_length=255)
    site = models.CharField(null=True, blank=True, max_length=255)s
    created = models.DateTimeField(null=True, blank=True, default=timezone.now)

class Bilan(models.Model):
    agregat = models.CharField(null=True, blank=True, max_length=255)
    SCF = models.CharField(null=True, blank=True, max_length=255)
    canva = models.ForeignKey('Canva', null=True, blank=True, on_delete=models.CASCADE, related_name='bilan_canva')

Как я могу отфильтровать класс Bilan по атрибуту "created" в классе Canva?

Вы можете фильтровать с помощью canva__created. Например, если вы хотите получить все элементы, созданные сегодня, вы можете работать с:

Bilan.objects.filter(canva__created__gte='2021-9-5')

здесь __gte поиск [Django-doc] таким образом извлекает Bilan объекты, где canva имеет created метку времени больше или равную 2021-9-5 00:00:00.

Это должно быть что-то вроде этого:

Bilan.objects.filter(canva__created__gte/gt/lte/lt=date/datetime)

Здесь,

gte = больше или равно

gt = greater

lte = меньше или равно

lt = меньше

Bilan.objects.filter(canva__created__range=(start_date, end_date))
Вернуться на верх