【问题标题】:Using python string formatting in a django template在 django 模板中使用 python 字符串格式化
【发布时间】:2011-08-03 09:46:25
【问题描述】:

有没有一种简单的方法可以在 django 模板中使用 python 字符串格式化?也就是说,我希望能够在模板中做这样的事情

{{ variable|%.3f }}

我知道在这种情况下,可以使用

{{ variable|floatformat:3 }}

但我真的很希望能够在 django 变量上通用地使用任何 python 字符串格式。在我的系统中,必须处理两种不同的输出格式(python vs django)是不方便的,所以我想标准化。我可以编写一个自定义模板标签,例如

{% pyformat variable format="%.3f" %}

或者可能是自定义模板过滤器,例如

{{ variable|pyformat:"%.3f" }}

其中任何一个已经存在吗?客户过滤器会处理这样传入的字符串吗?

【问题讨论】:

    标签: python django django-templates


    【解决方案1】:

    【讨论】:

      【解决方案2】:

      【讨论】:

      • "此说明符使用 Python 字符串格式化语法,但前导 "%" 被删除"
      • 注意stringformat".3f" 之间没有空格很重要!如果有空间,那么它会因“stringformat required 2 arguments, 1 provided”异常而崩溃!
      【解决方案3】:

      我省略了“%”:

          {{ variable|stringformat:".3f" }} 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-01-22
        • 2017-07-05
        • 2010-09-25
        • 2012-07-22
        • 1970-01-01
        • 2021-12-06
        相关资源
        最近更新 更多