在Django模板中的可变减法

可以写{{ myval.add:5 }}{{ myval|add:value }} ,甚至{{ myval|add:-5 }}

然而,我不能找出我应该键入什么来添加值* -1像{{ myval|add:-value }} 。 可悲的是,这不起作用。

内置的Django模板标签/filter并不是全部包含的,但是编写自己的自定义模板标签非常容易: https : //docs.djangoproject.com/en/1.4/howto/custom-template-tags/

你可以很容易地制作你自己的subtract模板标签:

 @register.filter def subtract(value, arg): return value - arg 

你需要使用双引号:

 {{ myval|add:"-5" }} 

这从myval减去五。

https://pypi.python.org/pypi/django-mathfilters

安装:$ pip在模板中安装django-mathfilters

 {% load mathfilters %} <ul> <li>8 + 3 = {{ 8|add:3 }}</li> <li>13 - 17 = {{ 13|sub:17 }}</li> {% with answer=42 %} <li>42 * 0.5 = {{ answer|mul:0.5 }}</li> {% endwith %} {% with numerator=12 denominator=3 %} <li>12 / 3 = {{ numerator|div:denominator }}</li> {% endwith %} <li>|-13| = {{ -13|abs }}</li> </ul>