Как получить все записи за текущий месяц Django

Я хочу получить следующий результат: <QuerySet [{'day_of_month': 2, 'objects_count': 200}]> Вот мой код:

    month_records = Model.objects.annotate(
        day_of_month=ExtractMonth("created_at")
    )
    full = month_records.values("day_of_month").annotate(
        objects_count=Count("day_of_month")
    )
    ordered = full.order_by("day_of_month")
    print(ordered)

Но этот код вместо дня месяца отображает номер месяца: <QuerySet [{'day_of_month': 5, 'objects_count': 200}]>.

Грубо говоря, мне необходимо, чтобы отображало количество объектов, созданных в каждый день месяца, например: в 7 день месяца было создано 5 объектов, в 8 день 20.


Ответы (1 шт):

Автор решения: Crazy Theory
current_datetime = now()

qs = Model.objects.filter(
    created_at__year=current_datetime.year,
    created_at__month=current_datetime.month
)
values = qs.annotate(day=ExtractDay("created_at")).values("day")

return values.annotate(count=models.Count("day"))
→ Ссылка