Как добавить / установить значение в пустом наборе запросов - django
Я выполняю отчет за последние 6 месяцев, который содержит в качестве полей месяц, посещения, сборы и другие сборы. Когда в месяце нет посещений, он показывает пустой набор запросов. как передать значение в пустой набор запросов.
Я получаю результат, как показано ниже:
<QuerySet [{'month': 7, 'visits': 19, 'fees1': Decimal('6380'), 'other_fees': Decimal('1730')}]>
<QuerySet [{'month': 6, 'visits': 6, 'fees1': Decimal('3201'), 'other_fees': Decimal('851')}]>
<QuerySet [{'month': 5, 'visits': 6, 'fees1': Decimal('900'), 'other_fees': Decimal('1685')}]>
<QuerySet []>
<QuerySet [{'month': 3, 'visits': 2, 'fees1': Decimal('455'), 'other_fees': Decimal('605')}]>
<QuerySet [{'month': 2, 'visits': 2, 'fees1': Decimal('430'), 'other_fees': Decimal('504')}]>
месяц 4 не имеет никаких посещений и сборов, так как набор запросов пуст. вместо пусто. Я хочу установить значение 0 для полей
Запрос, который я выполняю, выглядит следующим образом:
for a in range(0, 6):
#setting start and end date backward 6 month from this month
start_date = datetime(date.today().year, date.today().month-a, 1)
start_date = datetime.date(start_date)
end_date = datetime(date.today().year, date.today().month-a, 1) + relativedelta(months=1, days=-1)
end_date = datetime.date(end_date)
# getting visit per month, consultation fees and other fees sum based on month
v_per_month = visits.objects.filter(visit_date__gte=start_date, visit_date__lte=end_date)\
.annotate(
month= Extract('visit_date', 'month')
) \
.order_by('month') \
.values('month') \
.annotate(visits=Count('month'),fees1=Sum('visit_cons_fee'), other_fees = Sum('visit_other_fee'))