Money gem 将货币代码变量转换为小写
Money gem converting variable of currency code to lower case
我正在使用 rails 中的钱 gem 进行一些货币兑换。
我想动态设置转换率,以便我可以在脚本中使用它。
currency_code = ":SEK"
conversion_rate = @bank.get_rate(:USD, currency_code).to_f
我收到这个错误:
Money::Currency::UnknownCurrency: Unknown currency ':sek'
这意味着它正在将变量转换为小写。如果我明确输入 :SEK
我没有任何问题。
我什至试过玩这个:
cb = "SEK"
conversion_rate = @bank.get_rate(:USD, ":#{cb}").to_f
和
cc = ":SEK"
conversion_rate = @bank.get_rate(:USD, cc.upcase).to_f
但是我得到了同样的错误。
有什么想法吗?
布努西,
我看起来像是将货币作为字符串而不是符号传递。试试这个:
currency_code = :SEK
如果您需要在数据库中存储一个字符串,Ruby可以轻松地将其转换为符号。
currency = "SEK"
currency_code = currency.to_sym
=> :SEK
我正在使用 rails 中的钱 gem 进行一些货币兑换。
我想动态设置转换率,以便我可以在脚本中使用它。
currency_code = ":SEK"
conversion_rate = @bank.get_rate(:USD, currency_code).to_f
我收到这个错误:
Money::Currency::UnknownCurrency: Unknown currency ':sek'
这意味着它正在将变量转换为小写。如果我明确输入 :SEK
我没有任何问题。
我什至试过玩这个:
cb = "SEK"
conversion_rate = @bank.get_rate(:USD, ":#{cb}").to_f
和
cc = ":SEK"
conversion_rate = @bank.get_rate(:USD, cc.upcase).to_f
但是我得到了同样的错误。
有什么想法吗?
布努西,
我看起来像是将货币作为字符串而不是符号传递。试试这个:
currency_code = :SEK
如果您需要在数据库中存储一个字符串,Ruby可以轻松地将其转换为符号。
currency = "SEK"
currency_code = currency.to_sym
=> :SEK