如何从 DurationField 的总和中获取总秒数的查询集

时间:2021-04-04 21:28:46

标签: python django django-queryset timedelta

假设我有一个名为 MyModel 的 Django 模型,如下所示:

class MyModel(models.Model):
    event_started = models.DateTimeField(default=timezone.now)
    event_duration = models.DurationField()

现在我想得到一个按天分组的总秒数的查询集。以下代码返回总持续时间为 timedelta 而不是秒的查询集:

from django.db.models import Sum

qs = (MyModel.objects
      .annotate(day=TruncDay('event_started'))
      .values('day')
      .annotate(total_duration=Sum('event_duration'))
      .order_by('-day')
      )

我想在查询集的 timedelta 字段中包含总秒数而不是 total_duration。我该怎么做?

0 个答案:

没有答案