Django 显示带有元组数据的格式化字符串(只调用一次)



我想在 django 模板中显示元组数据。

我想使用像 Python 格式化字符串这样的语法:

print("I have %d referrers and %f cashbacks" % request.user.get_referrer_data())

在这种情况下,request.user.get_referrer_data()是一种昂贵的方法,因此我只想在我的模板中调用它一次(尽管我缓存了它的结果(。

你知道一个让我在字符串中注入元组的模板语法吗?

这样的代码会很棒:

{{ "I have %d referrers and %f cashbacks" | formated_string request.user.get_referrer_data() }}

使用{% with ...

{% with rdata=request.user.get_referrer_data %}
I have {{ rdata.0 }} referrers and {{ rdata.1 }} cashbacks
{% endwith %}

若要更好地控制值的格式,请使用筛选器。Django 为浮点值提供了floatformat

{{ rdata.1|floatformat:2 }}

给出两个小数位。

最新更新