我有一個(gè)出勤報(bào)告模型,工作人員在其中登記反饋和工作小時(shí)數(shù)等信息“nbr_heures”我的型號(hào):class AttendanceReport(models.Model):
id=models.AutoField(primary_key=True)
consultant_id=models.ForeignKey(Consultant,on_delete=models.DO_NOTHING)
mission_id=models.ForeignKey(Mission,on_delete=models.CASCADE,null=True)
session_year_id=models.ForeignKey(SessionYearModel,on_delete=models.CASCADE, null=True)
nbr_heures = models.IntegerField(blank=False)
feedback = models.TextField(max_length=255,null=True, default="")
created_at=models.DateTimeField(auto_now_add=True)
updated_at=models.DateTimeField(auto_now_add=True)
objects=models.Manager()我正在嘗試對(duì)“nbr_heures”的值進(jìn)行求和,我怎樣才能正確地做到這一點(diǎn)?我嘗試過這個(gè)但它不起作用.. hours_count=AttendanceReport.objects.annotate(nbr_heur=Sum('nbr_heures'))先感謝您。
1 回答

躍然一笑
TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
你需要在這里.aggregate(…)
[Django-doc]:
hours_count = AttendanceReport.objects.aggregate(
? ? nbr_heur=Sum('nbr_heures')
)['nbr_heur']
An.aggregate(…)
將對(duì)查詢集中的所有記錄進(jìn)行求和,而.annotate(…)
[Django-doc]將對(duì)每個(gè)對(duì)象(或每個(gè)唯一值,如果您使用)執(zhí)行聚合.values(…)
。
添加回答
舉報(bào)
0/150
提交
取消