Я хочу вычислять процент в шаблоне с помощью django
Я хочу рассчитать и показать процент скидки на товар в шаблоне. Я пробовал что-то вроде ниже, но это не сработало. Есть ли практический способ сделать это?
index.html
{% if product.sale %}
<span class="sale">{{((product.price - product.sale) / product.price) * 100}}</span>
{% endif %}
Вы не. Такой логике не место в шаблоне. Язык шаблонов Django преднамеренно ограничен, чтобы не позволить людям писать такую логику в шаблоне.
Обычно вы записываете это в модели, например, как propertly, например:
class Product(models.Model):
# …
@property
def price_percentage(self):
return 100 * (self.price - self.sale) / self.price
тогда в шаблоне вы можете отобразить это как:
{% if product.sale %}
<span class="sale">{{ product.price_percentage }}</span>
{% endif %}