有没有办法将同一模型的 2+ 个对象与所有字段的总值组合/合并为 1。
我的意思是,Author.objects.annotate(Sum('book__pages'))
但对于模型中的所有字段。
1 个对象 -{'user':2, 'events':20, 'time': 233}
2 对象 -{'user':2, 'events':10, 'time': 400}
需要总计 -{'user':2, 'events':30, 'time': 633}
谢谢
有没有办法将同一模型的 2+ 个对象与所有字段的总值组合/合并为 1。
我的意思是,Author.objects.annotate(Sum('book__pages'))
但对于模型中的所有字段。
1 个对象 -{'user':2, 'events':20, 'time': 233}
2 对象 -{'user':2, 'events':10, 'time': 400}
需要总计 -{'user':2, 'events':30, 'time': 633}
谢谢
您可以使用values()
然后annotate()
.
MyModel.objects.values('user').annotate(
total_events=Sum('events'),
total_time=Sum('time'),
)
有关更多信息,请参阅Django 文档。