微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – Rails和日期,默认情况下是以UTC格式存储的?

我在轨道上处理日期和时区的最好方法是什么?

Scenerio:我有客户在世界各地的网站上购买产品,当他们登录时,他们将能够选择他们来自哪个时区.

所以我相信我应该将数据库中的所有东西存储在UTC,然后在前端我应该把日期转换为用户设置时区偏好.

他们是否有Ruby和Rails和datetimes等的?

我是新来的,所以我正在寻找如何正确处理的指导.

解决方法

幸运的是,Rails几乎可以处理你的事情.正如其他人指出的,日期由AR以UTC格式存储.如果你的用户表有一个time_zone字段,你可以这样做:
# application.rb
config.time_zone = "Mountain Time (US & Canada)" # Default time zone

# application_controller.rb
before_filter :set_time_zone,:if => :logged_in?

protected
def set_time_zone
  Time.zone = current_user.time_zone if current_user.time_zone
end

所有的数据时间应该在您的视图中的适当时区显示.

我有一个不喜欢使用认时区的生产应用程序,但我不记得它运行的是哪个版本的Rails / Ruby.

原文地址:https://www.jb51.cc/ruby/265439.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐