【问题标题】:How do I convert this timestamp into a MySQL DATETIME object in Ruby?如何将此时间戳转换为 Ruby 中的 MySQL DATETIME 对象?
【发布时间】:2011-08-14 12:24:30
【问题描述】:

我正在获取 GPS 数据以显示在 Rails 2.3.8 应用中的 Google 地图上。

每个数据点的时间戳采用以下格式:

2011-08-14T09:23:11.000Z

我需要将它作为 DATETIME 对象导入 MySQL,以便我可以按时间对跟踪点进行排序和过滤。

有什么建议吗?

【问题讨论】:

  • 大多数数据库应按原样接受 ISO 8601 时间戳作为日期时间或时间戳列。当您尝试使用该字符串时会发生什么?
  • 我什至不知道这是一个 ISO 8601 时间戳,所以我将它存储在一个字符串中。我在问如何转换,以便将其存储为 DATETIME。

标签: ruby-on-rails ruby


【解决方案1】:

ActiveRecord 通常会在您将对象保存到数据库时为您转换。如果由于某种原因,您绕过了 AR,您可以通过以下方式将其转换为 db 格式:

"2011-08-14T09:23:11.000Z".to_s(:db)

【讨论】:

  • 将列从 VARCHAR 切换到 DATETIME,我完成了!!!我不知道这是标准格式。谢谢!!!
【解决方案2】:
 Time.parse "2011-08-14T09:23:11.000Z"

【讨论】:

    猜你喜欢
    • 2011-12-18
    • 1970-01-01
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 2014-07-06
    • 1970-01-01
    • 2023-03-04
    相关资源
    最近更新 更多