2016-08-31 28 views
1

我使用Rails 4和Solidus 1.2 如何將價格格式化爲貨幣符號的數字之前有一個空格,例如「€99」 ?Spree/Solidus:格式貨幣在空間價格之前顯示符號「€99」

施普雷/固相線使用Ruby錢寶石來處理貨幣和我在https://github.com/RubyMoney/money/blob/master/lib/money/money/formatting.rb看到有一個配置選項

Spree::Money.default_formatting_rules[:symbol_before_without_space] = true 

但沒有狂歡:: Money.default_formatting_rules [:symbol_before_with_space] =真

在我的初始化:

# config/initializers/spree.rb 

Money::Currency.register({ 
    :priority  => 1, 
    :iso_code  => "EUR", 
    :iso_numeric  => "978", 
    :name   => "Euro", 
    :symbol   => "€", 
    :subunit   => "Cent", 
    :subunit_to_unit => 100, 
    :separator  => ".", 
    :delimiter  => "," 
}) 

而且我也試圖在我的本地化文件中格式化像de.yml:

--- 
de: 
    number: 
    currency: 
     format: "%u %n" 

但價格的格式仍然是 「104,90€」 而不是 「€104,90」。

我不想做字符串插值格式化貨幣。有沒有我錯過的配置選項?

回答

2

好吧,這是令人尷尬,但我不得不設置

Spree::Money.default_formatting_rules[:symbol_before_without_space] = false 

得到我想要的格式。