Неподдерживаемый тип(ы) операнда(ов) для /: 'Vat' и 'int'
искал и не могу найти правильного решения У меня проблема с вычислением суммы НДС из 2 значений в моделях Django.
сначала модель НДС выглядит следующим образом
class Vat(models.Model):
vat_name = models.CharField(max_length=200)
vat_value = models.IntegerField()
def __str__(self):
return str(self.vat_value)
тогда у меня есть модель Statement, как показано ниже
class Statement(models.Model):
sales_invoice = models.IntegerField(blank=True, null=True)
vat_value = models.ForeignKey(Vat, on_delete=models.CASCADE, blank=True, null=True)
amount_in = models.DecimalField(max_digits=7, decimal_places=2, blank=True, null=True)
def vat_amt_in(self):
if self.amount_in and self.vat_value :
vat_amt_in = (self.vat_value/100)*self.amount_in
else:
return None
после этого я получаю ошибку
неподдерживаемый тип(ы) операнда для /: 'Vat' и 'int'
кто-нибудь может помочь с этим, чтобы я получил правильную сумму НДС
например, если vat_value = 21 и amount_in =50, то vat_amt_in =10,50
Ваша ошибка возникает из-за self.vat_value/100
, где первый аргумент имеет тип Vat, а не что-то кратное целому числу. Возможно, вы хотели self.vat_value.vat_value/100
(если IntegerField() делится на целое число).