Django фильтр по дате дает неверные результаты

Я пытаюсь отфильтровать данные, полученные из таблицы postgresSQL, используя метод django filter. Ниже приведен код, который я использую для этого, и я указываю "2022-7-13" в качестве filter_date в запросе. В базе данных есть 62 записи для даты "2022-7-13", но API выдает 23 записи в качестве результата.

Я установил USE_TZ = True в моем файле django settings.py и я использую pendulum.timezone('America/Los_Angeles') в качестве часового пояса в файле настроек django. Может ли кто-нибудь помочь решить эту проблему.

def get_runs(self, obj):
        """ drf serializer method field
        """
        runs = 0
        date = self.context.get('request').query_params.get('filter_date', None)
        if date is not None:
            filter_date = datetime.strptime(date, '%Y-%m-%d')\
                .replace(tzinfo=pendulum.timezone('America/Los_Angeles')).date()
            runs = obj.runs.filter(created_on__date=filter_date).count()    
        else:
            runs = obj.runs.count()
        return runs

Не могли бы вы объяснить, что вы получаете в дате и каков ее тип данных?

Вернуться на верх