Je semble avoir un problème de multiplication dans Django. Je veux multiplier l'achat total incluant la TVA avec ma valeur de TVA. Malheureusement, j'ai eu cette erreur.Type (s) d'opérande non supporté (s) pour *: 'Decimal' et vat
unsupported operand type(s) for *: 'Decimal' and 'VAT'
Il ressemble à mon programme appelle vat
(voir vues) `la « TVA » plutôt que décimal. Je ne suis pas sûr pourquoi il y a une erreur à moins qu'il y ait un autre moyen de contourner cela.
Views.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
models.py
class VAT(models.Model):
vat = models.DecimalField(max_digits = 4, decimal_places = 1)
def __unicode__(self):
return unicode(self.vat)
class Purchase(models.Model):
vat_period = models.ForeignKey(VAT_Period)
date = models.DateField()
amount = models.DecimalField(max_digits=20, decimal_places=2)
description = models.TextField(max_length = 400)
vat = models.ForeignKey(VAT)
def __unicode__(self):
return unicode(self.amount)