2012-05-07 18 views
2

私はmoney_to_currencyを使って金額を表示していますが、負の値に問題があります。私のhr.ymlは次のようになります:ruby​​ on rail i18nとnumber_to_currencyの負の値

number: 
    currency: 
     format: 
     format: "%n %u" 
     separator: "," 
     delimiter: "."  
     unit: "KN" 

通常の数字は大丈夫です。たとえば212の場合、212,50 KNが得られました。これは正しいです。 しかし、-212の場合は-KN212,50がありますが間違っています。 私はどこでも解決策を見つけることができません。私は何を間違えたのですか? あなたが

答えて

3

あなたのnumber_to_currency呼び出しで負のフォーマットを指定することができ感謝:私は間違ってんだ場合を除き

number_to_currency(1.99, :negative_format => '- %n %u') 

が、残念ながらあなたのYAMLファイルでこの形式を格納するための方法があるように思えません。 https://github.com/rails/rails/blob/c70135807ed786e6c9e18a35cc83ac6007450ca2/actionpack/lib/action_view/helpers/number_helper.rb#L123

+0

ありがとうございます...これは残念です:( – user899119

+0

これは問題を開く価値があります – tigrish

6

ちょうどあなたconfig/locales/your-locale.ymlファイルに次の行を置く:

number: 
    currency: 
     format: 
     negative_format: '-%n %u' 

、それが収まるように変更あなたの要望。

Rails 3.1.6アプリでテスト済みです。