19

私はフロート価格を持っています:

number_to_currency(m.price, :locale => 'en_us')

私は得る:$39.00

どうすれば削除できますか.00、取得したい:

$39
4

2 に答える 2

40

Rails API ドキュメントでここに記載されているように、精度を 0 に設定できます。

number_to_currency(m.price, locale: :en, precision: 0)

価格は四捨五入され、$38.50 から $39.49 までは $39 として表示されることに注意してください。

編集:より多くのアプリで有効になる可能性がある:en_usため、ロケールを交換しました。:en

于 2012-12-12T11:56:18.013 に答える
23

0セントの場合だけ小数点以下を飛ばしたい場合はどうですか?

number_to_currency(m.price, :locale => 'en_us').gsub(/\.00$/, "")
于 2012-12-12T12:02:12.667 に答える