[解決済み] 通貨/お金の取り扱いについて、最適な方法を教えてください。
2022-03-17 14:20:58
質問
私は非常に基本的なショッピングカートシステムに取り組んでいます。
テーブルがあります
items
カラムを持つ
price
型の
integer
.
ユーロとセントの両方を含む価格について、ビューに価格値を表示するのに苦労しています。Railsフレームワークでの通貨の扱いに関して、私は何か明らかなことを見逃しているのでしょうか?
解決方法は?
おそらくは
DECIMAL
という型をデータベースで使用することができます。マイグレーションでは、以下のようにします。
# precision is the total number of digits
# scale is the number of digits to the right of the decimal point
add_column :items, :price, :decimal, :precision => 8, :scale => 2
Railsでは
:decimal
という型が返されます。
BigDecimal
これは価格計算には最適です。
どうしても整数を使いたい場合は、手作業で
BigDecimal
を使うのが面倒になったのでしょう。
mclさんご指摘の通り、価格を表示するには、use:
number_to_currency(price, :unit => "€")
#=> €1,234.01
関連
-
[解決済み】Rails 4 RoutingError: ルートが一致しない[POST]。
-
[解決済み] 該当するルートがない [GET] "demo/hello"
-
[解決済み] rspec 3 - クラスメソッドをスタブ化する
-
[解決済み] Paramが無いか、値が空である。ParameterMissing in ResultsController#update
-
[解決済み] Ruby on Railsでsimple_formを使うさまざまな方法|何が違うの?
-
[解決済み] Railsです。gemを使った特定バージョンのライブラリのアンインストール
-
[解決済み] C#でお金に使うデータ型は何が良いのか?
-
[解決済み] インスタンスメソッドをモンキーパッチする場合、新しい実装からオーバーライドされたメソッドを呼び出すことは可能ですか?
-
[解決済み】activerecordのレコードを複製する最も簡単な方法は何ですか?
-
[解決済み】MySQLでお金の値を格納するための最適なデータ型
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】bundle installが "Could not locate Gemfile "を返す。
-
[解決済み】TypeError: SymbolからIntegerへの暗黙の変換がない。
-
[解決済み】gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み】PG::ConnectionBad: fe_sendauth: パスワードが供給されない
-
[解決済み] Rubyのクラスで未初期化の定数エラーが発生する
-
[解決済み] Railsで `before_action` での `only:` はどのように機能するのですか?
-
[解決済み] railsでhidden fieldタグを使用する方法
-
[解決済み] レイル 4 radio_button_tag default not selected
-
[解決済み] 属性とカラムの違いは何ですか?
-
[解決済み] 10進数の列にお金を格納する - どのような精度とスケール?[クローズド]