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
Не могли бы вы объяснить, что вы получаете в дате и каков ее тип данных?