【发布时间】:2020-02-19 06:02:32
【问题描述】:
我正在使用 Django,并尝试根据多天运行的事件来计算每天运行的事件数。例如,如果事件 1 从星期一开始,星期三结束,事件 2 从星期二开始,星期四结束,那么每天的事件计数应该是:星期一(1 个事件)、星期二(2 个事件)、星期三(2 个事件)、星期四(1 个活动)。事件模型如下所示:
class Event(models.Model):
name = models.CharField(max_length=300, blank=True)
start_date = models.DateTimeField(blank=True)
end_date = models.DateTimeField(blank=True)
def __str__(self):
return self.name
我希望查询结果包括我们计算的日期、当天运行的事件数以及当天运行的每个事件的名称。对此 Django 查询的任何帮助都会有所帮助。提前致谢!
【问题讨论】:
-
我认为通过查询集在这里做你想做的事情是不可能的。你需要使用pythonic的方式来实现它
-
@ruddra,有什么 Pythonic 方式的建议吗? :)
-
Bạn tham khảo bài này: stackoverflow.com/questions/32708749/…
-
或者使用 Python 获取所需信息最少的所有对象(仅 'start_date' 和 'end_date' 字段)并计数。
标签: python django django-models django-queryset django-orm