module ActionView::Helpers::NumberHelper
Action View Number Helpers
Provides methods for converting numbers into formatted strings. Methods are provided for phone numbers, currency, percentage, precision, positional notation, file size, and pretty printing.
Most methods expect a number
argument, and will return it unchanged if can’t be converted into a valid number.
Public instance methods
Delegates to ActiveSupport::NumberHelper#number_to_currency
.
number_to_currency("1234") # => "$1234.00"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_to_currency("12x34") # => "$12x34"
number_to_currency("12x34", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 55
def number_to_currency(number, options = {})
delegate_number_helper_method(:number_to_currency, number, options)
end
Delegates to ActiveSupport::NumberHelper#number_to_human
.
number_to_human("1234") # => "1.23 Thousand"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_to_human("12x34") # => "12x34"
number_to_human("12x34", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 125
def number_to_human(number, options = {})
delegate_number_helper_method(:number_to_human, number, options)
end
Delegates to ActiveSupport::NumberHelper#number_to_human_size
.
number_to_human_size("1234") # => "1.21 KB"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_to_human_size("12x34") # => "12x34"
number_to_human_size("12x34", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 111
def number_to_human_size(number, options = {})
delegate_number_helper_method(:number_to_human_size, number, options)
end
Delegates to ActiveSupport::NumberHelper#number_to_percentage
.
number_to_percentage("99") # => "99.000%"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_to_percentage("99x") # => "99x%"
number_to_percentage("99x", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 69
def number_to_percentage(number, options = {})
delegate_number_helper_method(:number_to_percentage, number, options)
end
Delegates to ActiveSupport::NumberHelper#number_to_phone
.
number_to_phone("1234567890") # => "123-456-7890"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_to_phone("12x34") # => "12x34"
number_to_phone("12x34", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 37
def number_to_phone(number, options = {})
return unless number
options = options.symbolize_keys
parse_float(number, true) if options.delete(:raise)
ERB::Util.html_escape(ActiveSupport::NumberHelper.number_to_phone(number, options))
end
Delegates to ActiveSupport::NumberHelper#number_to_delimited
.
number_with_delimiter("1234") # => "1,234"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_with_delimiter("12x34") # => "12x34"
number_with_delimiter("12x34", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 83
def number_with_delimiter(number, options = {})
delegate_number_helper_method(:number_to_delimited, number, options)
end
Delegates to ActiveSupport::NumberHelper#number_to_rounded
.
number_with_precision("1234") # => "1234.000"
Additionally, supports a :raise
option that will cause InvalidNumberError
to be raised if number
is not a valid number:
number_with_precision("12x34") # => "12x34"
number_with_precision("12x34", raise: true) # => InvalidNumberError
Source code GitHub
# File actionview/lib/action_view/helpers/number_helper.rb, line 97
def number_with_precision(number, options = {})
delegate_number_helper_method(:number_to_rounded, number, options)
end