【发布时间】:2021-01-25 09:43:44
【问题描述】:
我正在尝试使用 Django Query 对整个表进行求和。我还有一个使用我的 django 的 Postgresql 数据库。
我的表锻炼摘要视图:(实际上是它的 VIEW 语句):
| user_id | workout | results |
|---|---|---|
| 1 | Bench | 281.31 |
| 1 | Flat | 137.06 |
| 1 | Bench | 1497.91 |
| 1 | Bench | 64.50 |
| 1 | SQ | 555.65 |
| 1 | Wrench | 2803.39 |
| 1 | Flat | 2115.73 |
| 1 | Bench | 10578.63 |
| 1 | Flat | 146.52 |
| 1 | Flat | 1770.65 |
| 1 | Wrench | 22.61 |
我的意见.py
def workoutsummary (request):
dailyworkout = Dailyw.objects.filter(user_id=request.user.id)
workout = Workout.objects.filter(user=request.user, datecompleted__isnull=True)
dailyr = Dailyw.objects.aggregate(Sum('results')).values()
我的模型.py
class Daily(models.Model):
user_id = models.CharField(max_length=100)
title = models.CharField(max_length=100)
results = models.BigIntegerField(max_digits=5, decimal_places=2)
class Meta:
managed = False
db_table = "workoutsummaryview"
根据 django aggregation reference page 我确实尝试过类似的模板:
{{ results }}
和
{{ dailyr.results__sum }}
但是什么也没发生。我也尝试了 if 和 for 标记,但这也不起作用。我想所以我错过了一些重要的事情。如果有人可以帮助我,我真的很感激。提前谢谢你。
【问题讨论】:
-
可能锻炼对象为空
-
你试过调试django代码吗?您是否获得了那里的价值并且只是不在视图中显示任何内容?或者你甚至没有得到一个值锻炼摘要变量?
-
检查 Workout.objects.filter(user=request.user, datecompleted__isnull=True) 是否为空
-
您是否将
dailyr的值发送到模板?