我有一个 Rails 4 应用程序,它使用money-rails gem来定义货币对象。我在 User 模型上有一个名为 money 的对象default_price_cents
和一个currency
列,用于为每个用户定义货币(如此处所示):
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
问题:
当我在视图中显示默认价格时,它出于某种原因使用我register_currency
在模型中定义的货币,而不是使用用户在注册时定义的货币。如何让应用程序引用用户定义的货币而不是该模型的注册货币?