number_to_currency语言环境转换

为什么number_to_currency(33.50, :locale => :fr)显示$ 33.50? 它应该根据区域设置以不同的货币显示。 我期待33,50 €的结果。

非常感谢!

为此,您需要在config/locales/fr.yml上有一个语言环境文件才能使用。 你可以从这里得到它: https : //github.com/svenfuchs/rails-i18n/blob/master/rails/locale/fr.yml 。

:locale选项只向Rails声明你想要它的区域设置。 Rails没有项目中每种语言的所有翻译,因此您必须自己包含这些翻译文件。

我知道这有点晚了。 但只想表达上述答案。 使用方法如下:

 number_to_currency(aNumber, :locale => :fr) 

这使用文件config/locales/fr.yml 。 您可以形成自己的货币格式,并在config/locales/fr.yml 。 该文件将包含以下内容:

 fr: number: currency: format: unit: '€' delimiter: ',' separator: '.' precision: 2 format: '%u%n' 

unit是货币符号。 您也可以使用以下格式格式化整个字符串format: 。 更多关于这里