Python 获取单价*数量的总和
以下是我的模型摘录:Python 获取单价*数量的总和,python,django,annotations,sum,Python,Django,Annotations,Sum,以下是我的模型摘录: class Order(models.Model): ... content_type = models.ForeignKey(ContentType) user = models.ForeignKey('auth.User') class OrderItem(models.Model): ... unit_price = models.DecimalField(max_digits=7, decimal_places=2, bl
class Order(models.Model):
...
content_type = models.ForeignKey(ContentType)
user = models.ForeignKey('auth.User')
class OrderItem(models.Model):
...
unit_price = models.DecimalField(max_digits=7, decimal_places=2, blank=True)
quantity = models.SmallIntegerField()
order = models.ForeignKey(Order)
我有一个仪表板,我想在其中显示已售出商品的总数。我正在努力研究如何将单价
乘以数量
extra()
查询来完成此操作:
OrderItem.objects.extra(select={'total': 'unit_price * quantity'})
total
添加到OrderItem
:
class OrderItem(models.Model):
...
unit_price = models.DecimalField(max_digits=7, decimal_places=2, blank=True)
quantity = models.SmallIntegerField()
@property
def total(self):
return unit_price * quantity
# you can then access it like any other field (but you cannot filter on it)
print OrderItem.objects.get(pk=1).total
这正是您在
OrderItem
级别想要的吗?或者,您是否希望在OrderItem级别,而不是每个订单上,获取所有OrderItem
?@pcoronel的总额(单价*数量)。