*:'Decimal'和vat不支持的操作数类型

时间:2011-09-21 11:01:47

标签: python django math models

我似乎在Django中遇到了问题。我想将包含增值税的总购买量乘以增值税值。不幸的是,我收到了这个错误。

unsupported operand type(s) for *: 'Decimal' and 'VAT'

看起来我的程序调用{​​{1}}(参见视图)`'增值税'而不是小数。我不确定为什么会有错误,除非有另一种方法。

Views.py

vat

models.py

purchases = Purchase.objects.all()
vat = purchases[0].vat
total_purchases = Purchase.objects.all().aggregate(price = Sum('amount'))
total_purchases_vat = total_purchases['price'] * vat

2 个答案:

答案 0 :(得分:4)

purchases[0].vat生成VAT模型的实例。您需要使用purchases[0].vat.vat来获取实际值。

答案 1 :(得分:1)

猜测,你的意思是说:

vat = purchases[0].vat.vat