В нашем приложении мы используем number_to_currency(value, :precision => 2)
. Однако теперь у нас есть требование, согласно которому значение может отображаться с точностью до трех или более знаков после запятой, например.
0.01 => "0.01"
10 => "10.00"
0.005 => "0.005"
В нашей текущей реализации третий пример отображается как:
0.005 => "0.01"
Каков наилучший подход для меня здесь? Можно ли заставить number_to_currency
работать на меня? Если нет, то как определить, до скольких знаков после запятой должно отображаться данное значение с плавающей запятой? sprintf("%g", value)
подходит близко, но я не могу понять, как заставить его всегда соблюдать минимум 2dp.