Django 根据条件以浮动格式显示变量

Django 根据条件以浮动格式显示变量,django,Django,我想限制大于1乘2的数字的位数。 我想知道是否有一个简短的语法来简化代码 5行到一行,并从您的经验中学习 预期产出: 100.00 , 10.00 , 1.00 , 0.00000001 工作代码 {% if number > 1 %} {{ number | floatformat:2 }} {% else %} {{ number }} {% endif %} 我在寻找一种可能的语法,比如这个伪代码 {{ number | if

我想限制大于1乘2的数字的位数。 我想知道是否有一个简短的语法来简化代码 5行到一行,并从您的经验中学习

预期产出:

   100.00 , 10.00 , 1.00 , 0.00000001
工作代码

   {% if number > 1 %}
     {{ number | floatformat:2 }}
   {% else %}
     {{ number }} 
   {% endif %}
我在寻找一种可能的语法,比如这个伪代码

   {{ number | if number > 1 floatformat:2  }}

您可以在一行中执行
if-else
子句,如下所示:

{% if number > 1 %}{{ number | floatformat:2 }}{% else %}{{ number }}{% endif %}
如果需要自定义内容,可以创建自定义模板标记:

def自定义_格式(值):
如果值大于1,则返回“%.2f”%value
然后在模板中,您可以这样使用它:

{% if number > 1 %}{{ number | floatformat:2 }}{% else %}{{ number }}{% endif %}
{{number}自定义}

有关自定义模板标记的详细信息和有关内置模板标记的详细信息。

您是否尝试过为自己的目的创建自定义模板筛选器谢谢。关于过滤器——我也这么认为,但首先要确保没有更简单的方法。谢谢hagyn@scco如果对您有效,请将此答案标记为已接受