【发布时间】:2018-05-14 13:57:14
【问题描述】:
我有以下两种型号:
models.py
class Model_Item(models.Model):
item_name = models.CharField(max_length = 100, null = False, blank = False, unique = True)
def __unicode__(self):
return self.item_name
class Model_ItemTransaction(models.Model):
item = models.ForeignKey(Model_Item, to_field = "item_name")
item_sold = models.FloatField(null = True, blank = True)
def __unicode__(self):
return self.item
使用此列表视图:
views.py
class View_Item(ListView):
def get_queryset(self):
queryset = Model_Item.objects.all()
queryset = queryset.annotate(
sum_ = Sum(When(model_itemtransaction__item_sold))
)
return queryset
我的目标是获取每个项目的“item_sold”的总价值,并在 Listview 上显示这个值。我怎样才能做到这一点?
我一直在查看conditional expression 和this stackoverflow post,但无济于事。
【问题讨论】:
-
你从不指定 what 来总结,只指定 when 来总结。
标签: django