У меня есть модель:
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)
и я пытаюсь построить график между schedule_date и weight. Я хочу сгруппировать метку времени по часам и весу соответственно.
Как я могу это сделать?
В SQl это точно так же, как .groupby('scheduled_date)
, но так как это временная метка, я не думаю, что это то же самое
Должно ли это быть как:
data = DispatchPlan.objects.all().groupby('scheduled_date')
Я использую postgres в качестве базы данных.
Edit:
что я пробовал
dataset = DispatchPlan.objects.annotate(month=TruncMonth('scheduled_date')).values('month').annotate(c=sum('weight')).values('month', 'c')
ошибка:
TypeError: неподдерживаемые типы операндов для +: 'int' и 'str'