Rails:本地工作站解析时间的方式与服务器不同
Rails: local workstation parses time differently than server
有一些代码来解析带时区的字符串:
Time.strptime("5/28/19 14:26:36 Eastern Time (US & Canada)", '%m/%d/%y %H:%M:%S %Z')
奇怪的是,在我的本地机器上,结果是:2019-05-28 14:26:36 -0600
。
然而,当我在我的 Heroku 登台服务器上 运行 同一行时,结果是 2019-05-28 14:26:36 +0000
。
也许这两种环境之间存在一些 system/Rails 时区配置不同,但我希望它们能够正确解析相同的字符串。
在两个环境中使用相同版本的 Ruby、Rails 和所有 gem。
有什么想法吗?
您应该使用 Time.zone.strptime
来考虑时区,例如
Time.zone.strptime("5/28/19 14:26:36 Eastern Time (US & Canada)", '%m/%d/%y %H:%M:%S %Z')
有一些代码来解析带时区的字符串:
Time.strptime("5/28/19 14:26:36 Eastern Time (US & Canada)", '%m/%d/%y %H:%M:%S %Z')
奇怪的是,在我的本地机器上,结果是:2019-05-28 14:26:36 -0600
。
然而,当我在我的 Heroku 登台服务器上 运行 同一行时,结果是 2019-05-28 14:26:36 +0000
。
也许这两种环境之间存在一些 system/Rails 时区配置不同,但我希望它们能够正确解析相同的字符串。
在两个环境中使用相同版本的 Ruby、Rails 和所有 gem。
有什么想法吗?
您应该使用 Time.zone.strptime
来考虑时区,例如
Time.zone.strptime("5/28/19 14:26:36 Eastern Time (US & Canada)", '%m/%d/%y %H:%M:%S %Z')