The number module is accessible via the webhelpers.rails module.
Provides methods for converting numbers into formatted strings. Functions are provided for phone numbers, currencies, percentages, precision, positional notation, and file size.
Formats a number into a US phone number string.
Examples:
>>> number_to_phone(1235551234) '123-555-1234' >>> number_to_phone(1235551234, area_code=True) '(123) 555-1234' >>> number_to_phone(1235551234, delimiter=" ") '123 555 1234' >>> number_to_phone(1235551234, area_code=True, extension=555) '(123) 555-1234 x 555' >>> number_to_phone(1235551234, country_code=1) '1-123-555-1234'
Formats a number into a currency string.
Examples:
>>> number_to_currency(1234567890.50) '$1,234,567,890.50' >>> number_to_currency(1234567890.506) '$1,234,567,890.51' >>> number_to_currency(1234567890.50, unit="£", separator=",", delimiter="") '£1234567890,50'
Formats a number as into a percentage string.
Examples:
>>> number_to_percentage(100) '100.000%' >>> number_to_percentage(100, precision=0) '100%' >>> number_to_percentage(302.0574, precision=2) '302.06%'
Returns a formatted-for-humans file size.
Examples:
>>> number_to_human_size(123) '123 Bytes' >>> number_to_human_size(1234) '1.2 KB' >>> number_to_human_size(12345) '12.1 KB' >>> number_to_human_size(1234567) '1.2 MB' >>> number_to_human_size(1234567890) '1.1 GB' >>> number_to_human_size(1234567890123) '1.1 TB' >>> number_to_human_size(1234567, 2) '1.18 MB'
Formats a number with grouped thousands using delimiter.
Example:
>>> number_with_delimiter(12345678) '12,345,678' >>> number_with_delimiter(12345678.05) '12,345,678.05' >>> number_with_delimiter(12345678, delimiter=".") '12.345.678'
Formats a number with a level of precision.
Example:
>>> number_with_precision(111.2345) '111.234' >>> number_with_precision(111.2345, 2) '111.23'
See the source for more information.