【问题标题】:Using Money-Rails Gem for Multiple Currencies [Rails 4]使用 Money-Rails Gem 处理多种货币 [Rails 4]
【发布时间】:2014-07-22 21:19:24
【问题描述】:

我有一个使用 money-rails gem 定义货币对象的 Rails 4 应用程序。我在 User 模型上有一个名为 default_price_cents 的货币对象和一个 currency 列,用于为每个用户定义货币(如 here 所示):

class AddDefaultsToUser < ActiveRecord::Migration
  def change
    add_money :users, :default_price
    add_column :users, :currency, :string
  end
end

我的 user.rb 有以下几行:

register_currency :usd

monetize :default_price_cents, with_model_currency: :default_price_currency

然后用户在注册 (HAML) 中定义他们的货币:

.form-group
  = f.label :currency
  = f.select :default_price_currency, [['USD','usd'],['CAD','cad'],['DKK','dkk']]

我已经尝试将这个设置与:default_price_currency 和:currency 一起使用。

在我的观点中,我有:

humanized_money_with_symbol @default_price

问题:

当我在视图中显示默认价格时,出于某种原因,它使用了我在 model 中使用 register_currency 定义的货币,而不是使用用户在注册时定义的货币. 如何让应用引用用户定义的货币而不是该模型的注册货币?

【问题讨论】:

    标签: ruby-on-rails internationalization currency money-rails


    【解决方案1】:

    解决了!

    好吧,令人尴尬的是,写这篇文章帮助我在几秒钟后找到了答案。我会把它留给任何可能需要它的人。

    我在 user.rb 中更改了这一行:

    monetize :default_price_cents, with_model_currency: :default_price_currency
    

    看起来像

    monetize :default_price_cents, with_model_currency: :currency
    

    以及在我看来将default_price_currency 更改为currency。

    【讨论】:

      猜你喜欢
      • 2015-08-15
      • 2015-07-20
      • 1970-01-01
      • 1970-01-01
      • 2016-12-07
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      • 2013-02-17
      相关资源
      最近更新 更多