#3桁区切の表示にしたい場合
- to_s(:delimited)メソッドを使用する
- 上記メソッドを使用するために、ファイル先頭にrequireを追加する
active_supportはRuby on Railsのコンポーネントで色んなメソッドを使えるようにするもの
num.rb
require "active_support/core_ext/numeric/conversions"
10000.to_s(:delimited)
# => "10,000"
詳細はRailsガイドのActive Supportページに記載有(6.3 書式設定)
https://railsguides.jp/active_support_core_extensions.html#%E6%9B%B8%E5%BC%8F%E8%A8%AD%E5%AE%9A
#あとがき
私は3桁表示方法を探していた時
「.to_s(:delimited)メソッドで数値を3桁区切にできるらしい!」と喜んで使用したところ
requireが必要だとは知らず、以下エラーに遭遇。
in `to_s': no implicit conversion of Symbol into Integer (TypeError)
to_sは正常に使用できるのに、(:delimited)を追加するとエラーが発生して困りました。
そのため、 to_s(:delimited)メソッドをrubyで使用する場合はactive_support を有効にするrequireが必須です。
この機会にactive_supportの他の便利なメソッドも学習し、活用していきたいと思います。