【发布时间】:2016-08-05 14:44:50
【问题描述】:
如何获得具有 th、st、rd 等的 ruby 日期格式?例如今天是 8 月 5 日。我知道以前有人问过这个问题,并且我已经遵循了这些答案中提供的解决方案,但它们似乎对我不起作用。
我尝试了以下三种方式:
time = DateTime.now
time.strftime("%A, %B #{time.day.ordinalize} %Y")
=> 2016-08-05T10:29:52-04:00
time = Time.now()
time.strftime("#{time.day.ordinalize} %B %Y")
=> 2016-08-05 10:29:52 -0400
time = Time.new
day = time.strftime("%d")
day.ordinalize
=> NoMethodError:
undefined method `ordinalize' for "05":String
我在我的 spec_helper.rb 文件中包含以下内容:
require 'active_support/core_ext/integer/inflections'
我使用的是 ruby 2.3.0p0,主动支持 gem 是 4.2.6 版本。
任何帮助都会很棒,谢谢!
【问题讨论】:
-
你可以试试下面的命令吗?
gem install activesupport然后irb然后irb> require 'rubygems'#=> 真irb> require 'activesupport'#=> 真irb> 3.ordinalize#=> "3rd"
标签: ruby activesupport