首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在rails上管理不同的time_zones

如何在rails上管理不同的time_zones
EN

Stack Overflow用户
提问于 2016-03-08 05:46:54
回答 1查看 45关注 0票数 0

用户的属性是start_timeend_timetime_zone

我只是在节省时间,而不是日期和用户time_zone,例如

代码语言:javascript
复制
start_time => "09:00"
end_time => "02:00"
time_zone => "Samoa"

根据给定的start_timeend_time,用户只被称为b/w。我怎么检查这个的?

我的研究,我发现这个

代码语言:javascript
复制
in_time_zone('Eastern Time (US & Canada)')

我想根据它的start_time和基于time_zoneend_time来检查用户是否可用

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-08 06:43:00

代码语言:javascript
复制
server_tz = Time.zone # zone on server
server_now = server_tz.now # time on server right now

Time.use_zone(time_zone) do # ⇐ user’s time zone, 'Samoa'
  server_start, server_end = %i|start_time end_time|.map do |t|
    # ⇓ parse in user time zone and convert to server tz
    Time.zone.parse("#{Date.today} #{t}").in_time_zone(server_tz)
  end
  # ⇓ use case-triple-equal to check if time is in between
  (server_start..server_end) === server_now
end
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35859911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档