我有一个 RoR 应用程序,我在其中使用 gmaps4rails 存储位置。根据该位置的地址,我想猜测 UTC 偏移量(“+00:00”、“-05:00”、..)。是否有可能或者我必须要求用户(并信任他们)设置正确的时区偏移量?
顺便说一句,我知道有些地方的时区偏移量可能会在一年中发生变化。在这种情况下,我应该使用区域名称而不是偏移量。是否有宝石可以帮助解决这些问题?
谢谢,
我有一个 RoR 应用程序,我在其中使用 gmaps4rails 存储位置。根据该位置的地址,我想猜测 UTC 偏移量(“+00:00”、“-05:00”、..)。是否有可能或者我必须要求用户(并信任他们)设置正确的时区偏移量?
顺便说一句,我知道有些地方的时区偏移量可能会在一年中发生变化。在这种情况下,我应该使用区域名称而不是偏移量。是否有宝石可以帮助解决这些问题?
谢谢,
为此,使用任意数量的 Web 服务将地址定位到纬度/经度坐标。然后查看如何使用纬度和经度坐标从某个位置获取时区中的选项? Yevgeniy 提到的 Ruby gem 以及其他选项都在此处列出。
不要尝试获取该位置的偏移量- 它可能会针对 DST 定期更改。改为获取时区,例如Asia/Singapore
or America/New_York
。然后使用它来确定特定时间点的偏移量。
请参阅时区标签 wiki中的“时区!= 偏移量” 。
即使您得到了解决方案,最好向用户询问。如果美国用户想根据新加坡时区查看他/她的日期时间(因为那是他/她自己的),他/她应该这样显示。