Django: аргумент int() должен быть строкой, байтоподобным объектом или числом, а не 'datetime.timedelta'
Я хотел бы агрегировать с набором запросов и сравнить разницу в минутах между 2 datetime в Django. И я хотел бы получить результат в минутах (округленный).
opened_at и created_at являются полями DateTimeField.
@action(detail=False, methods=["get"], url_path="person-click-speed")
def person_click_speed(self, request):
accounts = get_account_ids(request)
queryset = models.CoursePerson.objects.filter(
account__in=accounts,
)
data = queryset.aggregate(
less_5_mint_count=Count(
"uid",
average_clic_time=Avg(F('emails_person__opened_at') - F('emails_person__created_at')),
)
res = {
'less_5_mint_count': data['less_5_mint_count'],
'average_clic_time': round(data['average_clic_time'].total_seconds() / 60 if data['average_clic_time'] else 0),
}
return Response(data=res)
Этот код работает хорошо, но мне нужно сделать это непосредственно в агрегате (average_clic_time).