2012-04-17 131 views
2

如您所見,我必須在此應用程序中添加更多貨幣才能使用此網絡應用程序http://www.designconnected.com/ ,它將以您選擇的任何幣種轉換價格,並以此方式保留它。 我一直在尋找已經過時的寶石,教程找不到任何和在stackoverflow有幾個關於它的問題,但他們都沒有得到我所需要的。rails 3.1多種貨幣

如果您有任何人知道更好的寶石,最近發佈...請讓我知道。 或者如果沒有它的寶石,我應該添加一個currency_id current_user所以應用程序將顯示此用戶適當的貨幣..但是,然後我從哪裏採取貨幣匯率..我一直在尋找解決方案現在3天了,什麼也沒有。

謝謝你的任何給定的建議..

此網址已經被檢查:

https://stackoverflow.com/questions/1368010/rails-currency-gem-or-plugin

Rails 3 - Multiple Currencies

https://github.com/RubyMoney/money

最後一個結合https://github.com/RubyMoney/google_currency樣子這是我需要的一個..但現在將是正確的時間獲得如何使用這個教程。

如果無法找到/獲取關於此的完整教程,請幫助您瞭解如何啓動它。 謝謝。

回答

7

https://github.com/RubyMoney/money-railshttps://github.com/RubyMoney/google_currency是要走的路。這不是我問的問題或問題,但無論如何,這是我現在最接近的答案。這是幾個步驟,我沒有得到這個工作:

寶石文件

gem "json" #if you don't have it 
gem "money" 
gem "google_currency" 

config/initializers

require 'money' 
require 'money/bank/google_currency' 
require 'json' 
MultiJson.engine = :json_gem 
Money.default_bank = Money::Bank::GoogleCurrency.new 

創建一個文件money.rb產品。 rb(或任何您需要轉換價格的型號)

composed_of :price, 
    :class_name => "Money", 
    :mapping => [%w(price price), %w(currency currency_as_string)], 
    :constructor => Proc.new { |price, currency| Money.new(price || 0, currency || Money.default_currency) }, 
    :converter => Proc.new { |value| value.respond_to?(:to_money) ? value.to_money : raise(ArgumentError, "Can't convert #{value.class} to Money") } 

並在視圖文件:

<%= number_to_currency(product.price.exchange_to(:EUR)) %> 

對於爲例,我有一個IT區域(意大利語) - 意大利的貨幣現在是歐元:

你就會有價格換算EUR ..對我來說真的很好,金寶石使用Google_currency將價格從美元轉換爲歐元,並且本地化yml文件更改此語言環境的貨幣,以便您的價格看起來像XXX,XX EUR而不是$ XXX, XX。

要爲每個需要添加的語言環境顯示正確的貨幣:

it: 
    number: 
    currency: 
     format: 
     format: "%n %u" 
     unit: "EUR" 

it.yml文件或者你有貨幣該國其他語言。