我有一个模型:
Model.py
(这是文件名)class DispatchPlan(models.Model):
total_trucks = models.IntegerField(default=0)
material_type = models.CharField(max_length=255, default=0, choices=mtypes)
scheduled_date = models.DateTimeField(max_length=255, default=0)
offered_price = models.IntegerField(default=0)
weight = models.IntegerField(default=0)
我正在尝试绘制计划日期和重量之间的图表。我想按小时分组时间戳并相应地分组重量。
我该如何做?
在SQL中,它就像是.groupby('scheduled_date')
一样,但由于这是一个时间戳,我认为情况并非如此。
它应该像这样:
data = DispatchPlan.objects.all().groupby('scheduled_date')
我正在使用PostgreSQL作为我的数据库。
编辑: 我尝试过以下方法:
dataset = DispatchPlan.objects.annotate(month=TruncMonth('scheduled_date')).values('month').annotate(c=sum('weight')).values('month', 'c')
错误:
类型错误:不支持使用 + 操作符进行 int 和 str 类型的运算