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:
でフォーマットすることもできます。これについての詳細 ここ