Как реализовать с архитектурной точки зрения отображение стоимости с или без скидки в моделе?
Подскажите, как реализовать правильно с архитектурной точки зрения отображение стоимости товара с или без скидки. Есть модель, в которой сохранено две стоимости. Пользователь может активировать промо код и тогда нам надо выводить на странице стоимость в зависимости от него. Так вот, сейчас я сделал следующим образом. В шаблоне проверяю была ли применена скидка и если да, то отображаю значение со скидкой, если нет - то другое. Но решение мне не нравится. Как-то выглядит ужасно. Может надо сделать метод у модели, в которую передавать параметр была ли скидка или нет, и тогда уже в этом методе возвращать правильное значение? Возможно, есть и другие варианты, о которых я и не подозреваю.
Сделать модель промокодов, хранящую сам промокод и размер скидки, который он даёт.
В модели товара реализовать propertycurrent_price, возвращающий значение поля price со скидкой, если таковая применяется, или просто значение поля, если не применяется.
В шаблоне просто выводить {{ item.current_price }}
Сергей Горностаев Первый пункт сделан. Второй пункт как раз и вызывает вопросы. У меня есть эта проперть, так вот как связать это с промокодом и сказать, что если промокод есть, то тогда бери стоимость со скидкой, если нет - то без, обычную цену?