【问题标题】:Convert datetime to format in ruby on rails将日期时间转换为 ruby​​ on rails 中的格式
【发布时间】:2016-08-25 04:26:34
【问题描述】:

如何将以下日期字符串转换为 ruby​​ on rails 中可接受的格式

Thu, Aug 25 12:00 AM

我还想要全局解决方案,它也可以采用以下格式,包括上面给出的:

August 25 2016

【问题讨论】:

    标签: ruby-on-rails datetime


    【解决方案1】:

    如果变量是时间或日期类

    [variable].strftime("%a, %B %d %T:%s %P")

    [variable].strftime("%B %d %Y")

    如果您想查看更多格式指令

    看看http://apidock.com/ruby/DateTime/strftime

    【讨论】:

      【解决方案2】:

      最重要的是config.time_zone 文件中的config/application.rb 配置。 ActiveRecord 将帮助您转换(文档未能解释)UTC 和您选择的时区。这意味着,如果您所做的只是让用户通过表单发布时间并使用 Active Record 将其持久化,那么您就可以开始了。

      Date.today
       => Thu, 25 Aug 2016 
      

      解析

      在解析时间信息时,千万不要在没有指定 time zone 的情况下进行解析。最好的方法是使用Time.zone.parse(将使用config.time_zone 中指定的时区)而不是仅使用Time.parse(将使用计算机的时区)。

      希望对您有所帮助!

      【讨论】:

      • 实际上@VKatz 我收到的所有这些日期时间都是 PDT 格式...我只是想将它存储到数据库中,但是在将其解析为 +0000 格式或以某种方式附加 PDT 时间格式之后-0700 转换为原始字符串.... 示例:Thu, Aug 25 03:00 PM 要转换为 Thu, Aug 25 22:00:00 +0000 或 Thu, Aug 25 15:00 -0700
      • Okey 所以你的意思是说在保存记录时没有问题,但是在检索它时却给出了意外的结果集,对吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-23
      • 1970-01-01
      • 2012-08-09
      • 2015-08-09
      • 2012-12-10
      • 2010-12-20
      • 2019-09-09
      相关资源
      最近更新 更多