我关注了 Ryan Bate 的 railscast #106 http://railscasts.com/episodes/106-time-zones-revised,它为 User 模型添加了一个 time_zone 字符串。该字符串来自下拉列表:
= f.time_zone_select :time_zone, ActiveSupport::TimeZone.us_zones
我正在尝试查询共享公共时区偏移量的所有用户(这样我就可以在每天的特定时间向他们发送电子邮件)。
User.where(:time_zone => ['Guadalajara','Central America','Mexico City', 'Monterrey', 'Saskatchewan'])
我无法获得特定偏移量的时区名称列表。我一直在修补 TzInfo 和 ActiveSupport::TimeZone.zones_map,但成功有限。我觉得 zone_map 应该能够满足我的需求,但是我无法从中获取我想要的数据(尽管我在那里看到了它!)。
我在这里采取了错误的方法吗?我在想我可以将 GMT 偏移量存储在用户身上,然后以这种方式查询?
我的 google-fu 让我失望了。