【问题标题】:How ActiveSupport knows user TimeZoneActiveSupport 如何知道用户 TimeZone
【发布时间】:2016-02-04 19:38:14
【问题描述】:

我的 Linux 服务器在纽约,配置为 GMT。

我所有的日期都以 UTC 格式保存。

要将这些日期返回给客户,我唯一需要做的就是?

date = my_date.utc_to_local 

不管我的客户在世界什么地方?

Rails 知道我的客户在哪里吗?

【问题讨论】:

标签: ruby-on-rails


【解决方案1】:

默认情况下,Rails 将始终以 UTC 格式存储日期/时间。如果不喜欢,可以这样改:

class Application < Rails::Application
  config.active_record.default_timezone = :local
end

无论日期/时间如何存储在数据库中,它总是会将其转换为应用程序默认时区:

例如:

class Application < Rails::Application
  config.time_zone = 'Eastern Time (US & Canada)'
end

希望对您有所帮助!如果您想了解更多详情,请告诉我!

【讨论】:

  • 嗨,汤姆,上周我已经完成了部分工作。我使用仅存储小时的 TIME 字段存在一些问题。我在认真考虑将所有 TIME 列更改为 DATETIME。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-11
  • 1970-01-01
  • 2014-04-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多