0

なぜこれが難しいのか分かりませんが、間違った方法を使っています。しかし、私はStripe APIを使って作業しています(すべてうまくいきます)、私は小数点以下2桁までサブスクリプションをラウンドしようとしています。Ruby(Rails)の丸め

たとえば、Stripeでは通貨の単位としてセントを使用します。だから私は995セントのサブスクリプションを持っているならば、私は明らかに$ 9.95としてそれを表示したい。しかし、私が使っているメソッド(number_with_precision(995/100、:precision => 2)は9.95ではなく9.00を与えています。 StackOverflowでここに丸めポストがありますが、ドル小数点以下2桁に変換してドル/セントに変換するものは見つけられません。

あなたのお時間をいただきありがとうございます。

あなただけのヘルパーに正しいデータ型を渡す必要があります。

代わりにそれをInteger instanを供給

答えて

3

CE(995/100あなたが9整数与え)、(あなたFloat9.95を与える995/100.to_f、)Floatインスタンスを渡す:

number_with_precision (995/100.to_f, precision: 2) # or 995/100.0 
#=> 9.95 
+0

それは仕事をしました!もう!ありがとう! – thenextmogul

1

あなたは(Pythonはまた、この動作を持っている)995/100.00を使用しようとすることができます。

Integer/Integer => Integerを使用しているため。 Integer/Float => Floatを実行しています。