2

我正在构建一个 Rails 电子商务应用程序,并希望集成一个货币兑换系统,访问者可以单击复选框并显示国家列表,当单击网站上产品的货币价值时,价值会发生变化所选国家的货币。是否有一个 Rails gem 可以连接到货币兑换服务器并自动为我转换货币或我如何实现这一点的任何想法。谢谢你。

4

2 回答 2

1

首先要做的是拥有像 USD NGN EUR 这样的货币代码,因此用户选择的任何货币都将其货币代码保存在会话或 cookie 中,记住您的默认货币设置为您想要使用的任何一个。

然后安装谷歌货币gem,它可以让您访问实时汇率。

假设所有这些都设置好了,我们要做的是

require 'money'
require 'money/bank/google_currency'
bank = Money::Bank::GoogleCurrency.new
rate = bank.get_rate(:NGN, :USD).to_f

对于此示例,我只是将 1 奈拉兑换为 1 美元

既然我没有汇率,我所要做的就是找到一种将商品价格转换为所选货币的方法。

假设用户选择 $ 然后session[:selected_currency] = "USD"

在我们的产品模型中,我们有以下

##Assuming default currency is NGN so it defaults to NGN if no currency code
require 'money'
require 'money/bank/google_currency'
    def converted_price(currency = :NGN)
          bank = Money::Bank::GoogleCurrency.new
          rate = bank.get_rate(:NGN, currency).to_f
          price = item_amount / rate
          price
    end 

所以在我们看来我们可以有<%= @product.converted_price(session[:selected_currency])%>

我没有对此进行测试,但这会让您了解我是如何解决这个问题的。

于 2014-06-26T10:42:15.457 回答
-1

查看金钱宝石
似乎有一些解决方法可以完全按照您的意愿去做,但是它会给您一个不错的基础来实现您的目标。

于 2012-05-22T09:41:29.073 回答