django - 在 Django 中编写多个聚合视图的最佳方法是什么?
问题描述
我有以下片段:
sum_games = GameHistory.objects.all().aggregate(Sum('games'))
sum_played = GameHistory.objects.all().aggregate(Sum('games_played'))
sum_goals = GameHistory.objects.all().aggregate(Sum('goals'))
sum_assists = GameHistory.objects.all().aggregate(Sum('assists'))
sum_clean_sheet = GameHistory.objects.all().aggregate(Sum('clean_sheet'))
写这个的最好和最干净的方法是什么?因为现在我只是在重复自己,但有不同的变量。
提前致谢。
解决方案
您可以用逗号分隔它们。
stats = GameHistory.objects.all().aggregate(sum_games=Sum('games'), sum_games_played=Sum('games_played'), ...)
然后像这样访问:
print(stats['sum_games'])
print(stats['sum_games_played'])
https://docs.djangoproject.com/en/2.2/topics/db/aggregation/#joins-and-aggregates
推荐阅读
- python - 当 PHP 脚本返回成功时触发 Python 异步函数
- mysql - docker搭建后如何运行程序
- c# - 预期在 Mock 上调用一次,但为 0 次
- ejs - 如何在我的 profile.ejs 文件中添加一个链接来更改页脚上方的下部?
- php - ERR_INVALID_RESPONSE 从控制器 laravel 生成 csv 文件
- ios - IOS - 如何加载视图只锁定主屏幕而不包括操作栏?
- php - 同时运行的投票系统未全部保存
- apache - 带有通配符子域的反向代理
- arrays - Powershell:if语句,在数组中获取null
- javascript - 一键点击“重新加载多页”