我有一个代码,显示价格:
def value
h.number_with_precision(object.value, precision: 2,strip_insignificant_zeros: false)
end
我将此值放在haml
:%b= #{number.value}
例如:显示价格&#34; 1234.02&#34;在<b/>
内,我需要一些样式来#34; .02&#34;。如何将精度放在span
内?
编辑:
Ruby字符串内置了格式化程序。无需使用任何类。
只需使用"%.2f" % #{number.value}
答案 0 :(得分:1)
您必须将number.value与'。'分开。作为分隔符,并像
一样使用它full_value = number.value.to_s.split('.')
haml: %b #{full_value[0]}.
%span #{full_value[1]}
答案 1 :(得分:-1)
由于你没有剥离无关紧要的零,你最终需要格式化3个数字(假设你包括小数位)。
你可以做到
number.value.to_s[0..-4]
除了最后3个字符串之外,它将为您提供字符串中的所有字符,然后
number.value.to_s.last(3)
要返回要单独格式化的部分
如果您不想格式化小数点,只需要分隔最后2个字符:
number.value.to_s[0..-3]
number.value.to_s.last(2)
然后,您可以根据需要格式化这些