【问题标题】:How do I convert a non ruby on rails date into a readable format?如何将非 ruby​​ on rails 日期转换为可读格式?
【发布时间】:2014-08-14 10:13:25
【问题描述】:

在 ruby​​ on rails 中是否有将此日期 2014-08-13T22:11:18.138Z 转换为更易读的格式,例如 dd/mm/yyyy 或 2014 年 1 月 1 日。

它来自 parse.com 数据库的 createdAt 字段。

如何转换?

我需要某种正则表达式吗?

是否有内置的 ruby​​ 代码可以用来为我进行转换?

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-4


    【解决方案1】:

    你可以这样做:

    // it will be parsed to the datetime in the timezone configured by rails app.
    Time.zone.parse('2014-08-13T22:11:18.138Z').strftime('%d/%m/%Y')
    

    【讨论】:

      【解决方案2】:

      Date 类具有大量标准格式的内置转换。确定格式(在本例中为 RFC3339),您将能够找到如下内容:

      require 'date'
      return Date.rfc3339('2014-08-13T22:11:18.138Z')
       #<Date: 2014-08-13 ((2456883j,0s,0n),+0s,2299161j)>
      

      【讨论】:

        【解决方案3】:

        在您的语言环境 en.yml 中

        date:
            formats:
              # Use the strftime parameters for formats.
              # When no format has been given, it uses default.
              # You can provide other formats here if you like!
              default: "%d/%m/%Y"
              short: "%b %d"
              long: "%B %d, %Y"
        

        在你看来

        <%= I18n.l @entry.created_at, :format => :short %>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-08-09
          • 1970-01-01
          • 2014-08-11
          • 1970-01-01
          • 2015-04-13
          • 1970-01-01
          • 2012-05-09
          相关资源
          最近更新 更多