Для этого можно использовать тег widthratio
, также вы можете использовать пользовательский templatetag
, как указано в комментарии Маурисио, но в widthratio
конечное значение должно быть число и не может быть float , так что это может быть проблемой.
Таким образом, существует третий способ достижения этого с помощью template-filters
Так что для умножения вы можете поместить это в свой templatetags
from django import template
register = template.Library()
@register.filter(is_safe=False)
def multiply(value, arg):
"""Multiply the arg to the value."""
try:
return float(value) * float(arg)
except (ValueError, TypeError):
try:
return value * arg
except Exception:
return ''
и используйте это в шаблоне как
{{ forloop.counter0|multiply:'0.1' }}
{{ '0.002'|multiply:'0.21' }} # Output : 0.00042
Здесь value
и arg
не обязательно должны быть int
, это также может быть float
, также нет необходимости загружать какие-либо теги для умножения в шаблонах.