如何在树枝中格式化数字而不四舍五入小数?例如,如果用户输入
12345.35,输出应为 12,345.35
12345.356,输出应为 12,345.356
12345.3567,输出应为 12,345.3567
我尝试number_format过滤器,但第一个参数是小数应四舍五入到的精度。如果我使用 12345.35|number_format(4, '.', ',')
结果是 12,345.3500,这不是所需的输出。
在格式化数字之前,您应该确定数字中的小数位数。不是很明显,但我找不到其他解决方案。
尝试使用此宏:
{% macro show_number(n) %}
{%- spaceless %}
{% set decimals = n | split('.')[1] | default('') | length %}
{{ n | number_format(decimals, '.', ',') }}
{% endspaceless -%}
{% endmacro %}
此处可运行的示例