Имею модель:
def rate(self):
return self.course - self.course / 100 * self.deviation
currency_from = models.ForeignKey(Currency, verbose_name=_('_from'), related_name="currency_from")
currency_to = models.ForeignKey(Currency, verbose_name=_('_to'), related_name="currency_to")
course = models.DecimalField(verbose_name=_('course'), max_digits=20, decimal_places=10)
deviation = models.DecimalField(verbose_name=_('deviation'), default=0, max_digits=20, decimal_places=10)
Далее используя эту модель, где необходимо я вызываю метод rate(). Так вот меня смущает то, что некая логика (подсчет) лежит у меня в моделе. Модель по сути не должна в себе содержать никакой логики. Подскажите, как или куда вы выносите логику модели, которая делает некие изминения над атрибутами модели при выводе? Возможно для этого необходимо реалезовать свой manager.py