首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ruby on Rails -如何以我需要的格式显示日期?从YYYY-MM-DD HH:MM:SS UTC转换为MM/DD/YYYY

Ruby on Rails -如何以我需要的格式显示日期?从YYYY-MM-DD HH:MM:SS UTC转换为MM/DD/YYYY
EN

Stack Overflow用户
提问于 2009-04-20 02:37:09
回答 7查看 53.4K关注 0票数 19

我是一个RoR新手。我尝试了很多东西,最后得出如下结论:

代码语言:javascript
运行
复制
<td>
 <%= Date.strptime(request.baseline_start_date, "%Y-%M-%D %H:%M:%S %Z").strftime("%M/%D/%Y")%>
</td>

但这也给了我一个错误:

代码语言:javascript
运行
复制
$_ value need to be String (nil given)

但我知道request.baseline_start_date给了我价值(尝试单独打印它)。我不知道它说哪一个是零给的。

对如何实现格式转换有什么建议吗?

EN

回答 7

Stack Overflow用户

发布于 2012-10-18 05:47:47

在Rails中,您可以对字符串使用to_time函数将其转换为Date对象:

代码语言:javascript
运行
复制
'2012-11-14 14:27:46'.to_time.strftime('%B %e at %l:%M %p')

#=> "November 14 at 2:27 PM"

有关方便的交互式参考指南,请参阅http://www.foragoodstrftime.com/

票数 32
EN

Stack Overflow用户

发布于 2009-04-24 18:38:07

代码语言:javascript
运行
复制
Date.strptime(
  "2009-04-24 18:33:41 UTC",
  "%Y-%m-%d %H:%M:%S %Z"
).strftime("%m/%d/%Y")
# => "04/24/2009"

我想您可能只是把格式字符串的大小写弄错了。

票数 27
EN

Stack Overflow用户

发布于 2012-10-18 05:50:50

请查看活动支持文档和示例,网址为:http://apidock.com/rails/ActiveSupport/CoreExtensions/DateTime/Conversions/to_formatted_s

示例

代码语言:javascript
运行
复制
datetime = DateTime.civil(2007, 12, 4, 0, 0, 0, 0)   # => Tue, 04 Dec 2007 00:00:00 +0000

datetime.to_formatted_s(:db)            # => "2007-12-04 00:00:00"
datetime.to_s(:db)                      # => "2007-12-04 00:00:00"
datetime.to_s(:number)                  # => "20071204000000"
datetime.to_formatted_s(:short)         # => "04 Dec 00:00"
datetime.to_formatted_s(:long)          # => "December 04, 2007 00:00"
datetime.to_formatted_s(:long_ordinal)  # => "December 4th, 2007 00:00"
datetime.to_formatted_s(:rfc822)        # => "Tue, 04 Dec 2007 00:00:00 +0000"

或者,如果您真的想要自定义它,可以像这样定义helper:

代码语言:javascript
运行
复制
def custom_format(time)
  Time::DATE_FORMATS[:w3cdtf] = lambda { |time| time.strftime("%Y-%m-%dT%H:%M:%S# {time.formatted_offset}") }
end
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/766674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档