问题:如何在Django模板中进行数学运算?

我想做这个:

100 - {{ object.article.rating_score }} 

因此,例如,输出将是20,如果{{ object.article.rating_score }}追平80

如何在模板级别执行此操作?我无权访问Python代码。

I want to do this:

100 - {{ object.article.rating_score }} 

So for example, the output would be 20 if {{ object.article.rating_score }} equaled 80.

How do I do this at the template level? I don’t have access to the Python code.


回答 0

您可以使用add过滤器:

{{ object.article.rating_score|add:"-100" }}

You can use the add filter:

{{ object.article.rating_score|add:"-100" }}

回答 1

使用django-mathfilters。除了内置的添加过滤器外,它还提供了过滤器以减去,相乘,除以和取绝对值。

对于上面的特定示例,您可以使用{{ 100|sub:object.article.rating_score }}

Use django-mathfilters. In addition to the built-in add filter, it provides filters to subtract, multiply, divide, and take the absolute value.

For the specific example above, you would use {{ 100|sub:object.article.rating_score }}.


回答 2

通常,建议您在视图中进行此计算。否则,您可以使用添加过滤器。

Generally it is recommended you do this calculation in your view. Otherwise, you could use the add filter.


声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。