У меня есть простая модель:
class Atividade(models.Model):
valor_brl = models.DecimalField(max_digits=14, decimal_places=2)
dolar_ref = models.DecimalField(max_digits=14, decimal_places=2)
valor_usd = models.DecimalField(max_digits=14, decimal_places=2)
Я создаю после метода для вычисления нового значения, используя два поля из модели
@property
def valor_usd_novo(self):
valor_usd_novo = self.valor_brl / self.dolar_ref
return valor_usd_novo
Если я вызываю {{ valor_usd_novo }}
Я получаю желаемый результат.
После этого я создаю метод save (), чтобы сохранить valor_usd_novo
результат в поле valor_usd
из модели.
def save(self, *args, **kwargs):
self.valor_usd = self.valor_usd_novo()
super(Atividade, self).save(*args, **kwargs)
Дело в том,что, когда я вызываю valor_usd
, я не получил никаких результатов, и база данных не обновляется с результатом из метода valor_usd_novo
.
Что мне здесь не хватает?