Я хочу сделать это:
100 - {{ object.article.rating_score }}
Так, например, результат будет , 20если {{ object.article.rating_score }}равен 80.
Как это сделать на уровне шаблона? У меня нет доступа к коду Python.
Ответы:
Вы можете использовать addфильтр:
{{ object.article.rating_score|add:"-100" }}
Используйте django-mathfilters . Помимо встроенного фильтра сложения, он предоставляет фильтры для вычитания, умножения, деления и получения абсолютного значения.
Для конкретного примера выше вы должны использовать {{ 100|sub:object.article.rating_score }}.
Обычно рекомендуется выполнять этот расчет в вашем представлении. В противном случае вы можете использовать фильтр добавления.
widthratioтег шаблона. Для вычисления a * b используйте{% widthratio a 1 b %}, для a / b используйте{% widthratio a b 1 %}. Единственный недостаток, результаты округляются до целого числа перед возвратом. Использование тега шаблона Django widthratio для умножения и деления