【问题标题】:Strip time zone part from Time in Ruby从 Ruby 中的 Time 中剥离时区部分
【发布时间】:2015-01-20 21:20:40
【问题描述】:

如何从 Time 中去除时区部分,使日期和时间部分保持不变?目前我正在使用 strftime 函数。我的最终目标是确定用本地时间查询 MySQL。我应该确保当地时间不会突然转换为其他时间。

【问题讨论】:

  • 你是如何查询 MySQL 的?您使用的是哪些宝石?

标签: ruby-on-rails time timezone


【解决方案1】:

您可以使用time.strftime('%Y-%m-%d %H:%M:%S'),如 activesupport 在例如中使用的那样

Time.now.to_s(:db)

source

【讨论】:

  • 对我来说非常好的解决方案!
【解决方案2】:

您是否尝试使用相同的文字时间(即 10:56 ET 和 10:56 PT)而不考虑时区?

或者您是否试图确保查询引用相同的确切时间(即 10:56 ET 和 7:56 PT)?

对于前一种情况(相同的文字时间),只需从 strftime 参数中省略 %z%Z

对于后者,我建议将 Unix 时间戳与 Ruby 的 time.to_i 函数和 MySQL 的 FROM_UNIXTIME() 函数一起使用

【讨论】:

    猜你喜欢
    • 2016-10-03
    • 2021-01-03
    • 1970-01-01
    • 2011-11-16
    • 1970-01-01
    • 2016-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多