2016-01-21 68 views
0

小枝格式化數字時如何不捨去小數? 例如,如果用戶輸入沒有舍入小數的小枝數字格式

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,這不是所需的輸出。

回答

1

在格式化之前,您應確定數字中的小數位數。不是很明顯,但我找不到其他解決方案。

嘗試用這個宏:

{% macro show_number(n) %} 
    {%- spaceless %} 
    {% set decimals = n | split('.')[1] | default('') | length %} 
    {{ n | number_format(decimals, '.', ',') }} 
    {% endspaceless -%} 
{% endmacro %} 

Runnable的例子here

+0

那輝煌。效果很好。 +1演示。 – Asha