ben*_*t_w 3 ruby ruby-on-rails stripe-payments
我必须向Stripe发送一些以美分为单位的金额以便对卡进行收费.在我的应用程序中,total_price值是小数,即以美元和美分.显然,我可以通过乘以100将其转换为美分:
total_price * 100
Run Code Online (Sandbox Code Playgroud)
但结果仍然是小数,Stripe给我一个'无效金额'错误.我知道圆形浮子可能存在问题.我想知道total_price在Rails中将我转换为整数的最安全的方法.我看过一些关于金钱宝石的参考但在这种情况下这是必要的吗?
Ruby有几种可用于浮点数的方法,具体取决于您的需求:
(cart.total_price * 100).to_i (discards all decimals)(cart.total_price * 100).round # .round(numofdecimals)(cart.total_price * 100).floor # 1.3 => 1(cart.total_price * 100).ceil # 1.3 => 2(cart.total_price * 100).to_r #to rationals, e.g. 2.5 => 5/2我希望这有帮助.
| 归档时间: |
|
| 查看次数: |
3702 次 |
| 最近记录: |