Money-Rails Gem 和实例货币
Money-Rails Gem and Instance Currencies
我正在尝试在我的 rails 4 应用程序中使用钱-rails gem。
我有一个参与者模型,其中包含每种货币的属性和 participation_cost。我的objective是让用户指定每个实例的货币,以及参与费用的金额。
在我的参与者模型中,我有:
货币化:participation_cost,with_model_currency::amount_currency
在我的表格中,我要求用户select一种货币并指定一个金额如下:
<%= f.input :participation_cost, label: 'What amount will you pay for participation costs?', :label_html => { :class => 'question-participants' }, placeholder: 'Whole numbers only', :input_html => {:style=> 'width: 250px; margin-top: 20px', class: 'response-participants'} %>
<br><br>
<%= f.input :currency, label: 'Select your costs currency', label_html: {class: 'fundingspace'}, collection: ["AUD Australian Dollars", "GBP British Pounds", "USD US Dollars" ], prompt: "Choose one" %> </div> <br>
在我看来,我想显示货币和金额。我目前有一个字符串如下:
<%= "#{@project.scope.try(:participant).try(:participation_cost)} #{@project.scope.try(:participant).try(:currency)}" %>
当我测试这个时,我只得到 participation_cost 的数字。我没有收到货币。
在我的 money.rb 初始化程序中,我有:
config.default_currency = :gbp
有人可以帮忙吗?我不知道如何使用这个gem。我已经按照用户指南进行操作,但它只涉及为基于实例的货币 selections 设置模型。有没有人成功地将它用于此目的?
谢谢
步骤:
添加列类型货币
Rails 3
add_money :table_name, :participation_cost
Rails 4
add_monetize :table_name, :participation_cost
这将为您提供两列
:participation_cost_pennies #pennies if GBP, cents if USD
:participation_cost_currency
在模型中
以下行覆盖此列的默认货币和全球货币,并将在此列中使用货币
monetize :participation_cost_pennies, with_model_currency: :participation_cost_currency
只需更新表单中的字段并像保存时那样保存货币,但在 participation_cost_currency 列中。
如果您不想在末尾添加便士或在货币列中添加 participation_cost,您可以在 Money.rb 中进行修改。参见 here
我正在尝试在我的 rails 4 应用程序中使用钱-rails gem。
我有一个参与者模型,其中包含每种货币的属性和 participation_cost。我的objective是让用户指定每个实例的货币,以及参与费用的金额。
在我的参与者模型中,我有:
货币化:participation_cost,with_model_currency::amount_currency
在我的表格中,我要求用户select一种货币并指定一个金额如下:
<%= f.input :participation_cost, label: 'What amount will you pay for participation costs?', :label_html => { :class => 'question-participants' }, placeholder: 'Whole numbers only', :input_html => {:style=> 'width: 250px; margin-top: 20px', class: 'response-participants'} %>
<br><br>
<%= f.input :currency, label: 'Select your costs currency', label_html: {class: 'fundingspace'}, collection: ["AUD Australian Dollars", "GBP British Pounds", "USD US Dollars" ], prompt: "Choose one" %> </div> <br>
在我看来,我想显示货币和金额。我目前有一个字符串如下:
<%= "#{@project.scope.try(:participant).try(:participation_cost)} #{@project.scope.try(:participant).try(:currency)}" %>
当我测试这个时,我只得到 participation_cost 的数字。我没有收到货币。
在我的 money.rb 初始化程序中,我有:
config.default_currency = :gbp
有人可以帮忙吗?我不知道如何使用这个gem。我已经按照用户指南进行操作,但它只涉及为基于实例的货币 selections 设置模型。有没有人成功地将它用于此目的?
谢谢
步骤:
添加列类型货币
Rails 3
add_money :table_name, :participation_cost
Rails 4
add_monetize :table_name, :participation_cost
这将为您提供两列
:participation_cost_pennies #pennies if GBP, cents if USD
:participation_cost_currency
在模型中 以下行覆盖此列的默认货币和全球货币,并将在此列中使用货币
monetize :participation_cost_pennies, with_model_currency: :participation_cost_currency
只需更新表单中的字段并像保存时那样保存货币,但在 participation_cost_currency 列中。
如果您不想在末尾添加便士或在货币列中添加 participation_cost,您可以在 Money.rb 中进行修改。参见 here