1

我集成了一个支付网关,我使用 gem money-rails在我的应用程序中处理钱,从我的控制器我有一个向用户的信用卡收费的动作,我想使用帮手 money-rails但是假设您只能使用视图中的助手,那么我不知道如何正确获取用于发送到支付网关的金额,例如,如果我有以下货币对象:

<Money fractional:650 currency:USD>

我想获取 value 6.5,然后将其发送到网关,有一个名为的助手:humanized_money但我不能从控制器中使用它。任何建议将不胜感激。

4

3 回答 3

3

在 Rails 5 中,view_context不再可用....您可以在控制器中使用内联调用辅助方法,也可以helpers.humanized_money简单地调用:

ActionController::Base.helpers.humanized_money
于 2017-03-06T13:08:32.107 回答
2

可能有点晚了,但是从控制器的角度访问助手,你可以使用

view_context.humanized_money

这适用于任何其他视图助手。

于 2015-11-19T11:46:17.517 回答
1

在您想要使用金钱宝石的控制器中执行以下操作:

include MoneyRails::ActionViewExtension

在您要使用金钱对象的方法中,现在可以使用助手。

例子: money_without_cents(@money)

于 2020-05-26T18:11:36.737 回答