我正在尝试按类别获得总销售额。
我知道有一种方法可以用 python 做到这一点,但我宁愿用查询或聚合来做到这一点。
我的模型:
class Item(models.Model):
category= models.ForeignKey(Category)
name = models.CharField(max_length=40)
class Category(models.Model):
name = models.CharField(max_length=40)
class Store(models.Model):
name=models.CharField(max_length=40)
class Sale(models.Model):
item=models.ForeignKey(Item)
store=models.ForeignKey(Store)
quantity=models.IntegerField()
class Store_Item(models.Model):
item=models.ForeignKey(Item)
store=models.ForeignKey(Store)
price= models.DecimalField(max_digits=10, decimal_places=2)
结果应该是这样的:
sales total
books 100 859.10
audio 200 1894.20
total 300 2753.3
现在我得到每个类别的总量是这样的:
p=Sale.objects.all().values('item__category__name').order_by('item__category__name').annotate(total=Sum('quantity'))
我得到:
books 100
audio 200
但我被困在价格部分。
任何帮助将不胜感激。提前致谢!