如何从地址获取utc偏移量?

时间:2013-08-26 11:59:06

标签: ruby-on-rails ruby timezone gmaps4rails timezone-offset

我有一个RoR应用程序,我使用gmaps4rails存储位置。根据位置的地址,我想猜测UTC偏移(" +00:00"," -05:00",..)。 是否可以或者我必须要求用户(并信任他们)设置正确的时区偏移?

顺便说一句,我知道有些地方的时区偏差可能会在一年内发生变化。在这种情况下,我应该使用区域名称而不是偏移量。有没有宝石有助于解决这些问题?

谢谢,

2 个答案:

答案 0 :(得分:0)

使用任意数量的Web服务将地址地理位置设置为纬度/经度坐标。然后查看How to get a time zone from a location using latitude and longitude coordinates?中的选项Yevgeniy提到的Ruby gem以及其他选项。

不要尝试为该位置获取偏移 - 它可能会定期更改为夏令时。获取时区,例如Asia/SingaporeAmerica/New_York。然后使用它来确定特定时间点的偏移量。

请参阅the timezone tag wiki中的“时区!=偏移”。

答案 1 :(得分:-2)

即使您获得了解决方案,最好向用户询问。如果美国的用户希望根据新加坡的时区看到他/她的日期时间(因为这是他/她的家乡),他/她应该像那样出现。