Rails语言环境无法正常工作

时间:2014-08-31 22:01:29

标签: ruby-on-rails

我正在使用Rails 4
我已将默认语言环境设置为config / application.rb中 is.yml在config / locales中 在Rails控制台中,我输入

I18n.available_locales  
=> [:en, :is]  

I18n.default_locale  
=> :is  

I18n.locale  
=> :is  

a = 1.25  
number_with_precision(a, locale: :is)  
=> "1.250"  

这只是en格式
期待1,25

is.yml文件如下:

is:  
  number:  
    format:  
      delimiter: ! ','  
      precision: 3  
      separator: .  
      significant: false  
      strip_insignificant_zeros: false  

有关如何使其正常工作的任何建议?

2 个答案:

答案 0 :(得分:2)

1.250正是您应该使用的设置。要获得1,25,这将有效。

format:
  delimiter: ! ','
  precision: 2
  separator: ','
  significant: false
  strip_insignificant_zeros: false

答案 1 :(得分:1)

您可以在语言环境中创建分隔符的默认配置。喜欢:

en:
  format:
    number:
      delimiter: ','


pt-BR:
  format:
    number:
      delimiter: '.'

设置完之后。您可以在常规分隔符上调用语言环境,例如:

对于pt-BR:

number_with_precision(6419336, precision: 2, delimiter: 
I18n.t('number.format.delimiter')) #=> "6,419,336.00"

对于en:

number_with_precision(6419336, precision: 2, delimiter: 
I18n.t('number.format.delimiter')) #=> "6.419.336,00"