to_formatted_s(format = :default) public

Convert to a formatted string. See DATE_FORMATS for predefined formats.

This method is aliased to to_fs.

date = Date.new(2007, 11, 10)       # => Sat, 10 Nov 2007

date.to_formatted_s(:db)            # => "2007-11-10"
date.to_fs(:db)                     # => "2007-11-10"

date.to_formatted_s(:short)         # => "10 Nov"
date.to_formatted_s(:number)        # => "20071110"
date.to_formatted_s(:long)          # => "November 10, 2007"
date.to_formatted_s(:long_ordinal)  # => "November 10th, 2007"
date.to_formatted_s(:rfc822)        # => "10 Nov 2007"
date.to_formatted_s(:iso8601)       # => "2007-11-10"

Adding your own date formats to to_formatted_s

You can add your own formats to the Date::DATE_FORMATS hash. Use the format name as the hash key and either a strftime string or Proc instance that takes a date argument as the value.

# config/initializers/date_formats.rb
Date::DATE_FORMATS[:month_and_year] = '%B %Y'
Date::DATE_FORMATS[:short_ordinal] = ->(date) { date.strftime("%B #{date.day.ordinalize}") }
Show source
Register or log in to add new notes.