django项目开发中,计算小计金额遇到了问题:
cart.subtotal = goods.price * nums
TypeError: unsupported operand type(s) for +: 'decimal.Decimal' and 'float'
分析了一下发现:
商品模型类中的价格是DecimalField,数量num是整型
直接相乘才出现了这个错误
解决方法:
1、导入python的Decimal
from decimal import Decimal
2、把数量装换成Decimal在进行乘法计算
cart.subtotal = goods.price * Decimal(nums)