Эта функция доступна с помощью AcitveSupport. Вы можете сделать require 'activesupport'
, чтобы получить его. Это может быть излишним, хотя. Вы также можете использовать #stamp
из Facets , чтобы сделать то же самое, но вы должны установить формат :only_date
:
require 'facets/date'
Date::FORMAT[:only_date] = '%d.%m.%y' # For Date objects
Time::FORMAT[:only_date] = '%d.%m.%y' # For DateTime objects
d = DateTime.now
d.stamp(:only_date) # => "24.08.09"
Если вы действительно хотите использовать его с методом to_s
, вы также можете сделать это:
require 'facets/date'
Date::FORMAT[:only_date] = '%d.%m.%y' # For Date objects
Time::FORMAT[:only_date] = '%d.%m.%y' # For DateTime objects
class DateTime
alias :default_to_s :to_s
def to_s(format=nil)
if format.nil?
default_to_s
else
stamp format
end
end
end
d = DateTime.now
d.to_s(:only_date) # => "24.08.09"