2011-06-15 38 views
0

我有我的模板下面的代碼:Django的數學問題

{{ object.rating.get_percent|floatformat|add:"-100" }} 

,輸出-50

object.rating.get_percent值是50。我想從100減去它。所以我期待50作爲回報。我爲什麼得到-50

回答

3

你得到-50,因爲「-100」是操作數到add。第一個操作數是object.rating.get_percent|floatformat的結果。

本質上你的表情是:

50 + -100 

如果你真的絕望計算 「100 - X」,你可以使用{% widthratio %} tag

{% widthratio -100|add:object.rating.get_percent -100 100 %} 

但是,你真的應該只得到後端開發人員爲您添加模板過濾器。

+0

這就是我的想法,所以你知道我怎麼能得到50?我看了一下django文檔,他們唯一的數學模板過濾器就是add。我只能訪問前端模板標籤/變量,所以我不能在python中完成。 – Sam 2011-06-15 00:56:18

+0

所以如果'object.rating.get_percent'是60,你想輸出爲40? – 2011-06-15 01:15:50

+0

@Sam看看我使用'widthratio'的例子,這可能就是你以後的樣子。 – 2011-06-15 01:25:39