2

我一直在努力解决这个问题,但即使经过大量研究,我也无法找到合适的解决方案。

我正在尝试建立一个航班预订系统。我有一个 api,它以 UTC 时间返回航班的到达和离开时间。现在我想以那个国家的当地时间显示航班的出发和到达时间。有没有更快的方法来做到这一点。到目前为止,我已经让这个看起来很重的东西工作了。我正在下面写一些示例代码。

<% flights.each do |flight| %>
  <% time_zone_name = TZInfo::Country.get(flight.departure_country_code).zone_names.first %>
  <% time_zone = TZInfo::Timezone.get('time_zone_name') %>
  departure_time : <%= time_zone.utc_to_local(flight.departure_time) %>
<% end %>
4

1 回答 1

1

这可能会有所帮助。您可以获取用户的时区,Time#localtime 将为您提供运行代码的机器当前时区的时间

> time = Time.now.utc
   => 2013-11-11 14:42:49 UTC 
> time.localtime
  => 2013-11-11 20:12:49 +0530 
于 2013-11-11T14:49:11.717 回答