如何在 Rails 中将时间从 UTC 转换为 PST

Aja*_*jay 2 timezone utc pst ruby-on-rails-3

我的Ruby on Rails应用程序,我从数据库中获取UTC时间(即在活动记录对象中)。我想在显示到 UI 之前将时间转换为 PST。我尝试这样做 dataFromDB = DataTable.find_by_sql("select time from datatables"); dataFromDB[0].time = dataFromDB[0].time.in_time_zone("太平洋时间(美国和加拿大)")

但它不起作用,它显示相同的时间,即 UTC 时间。

Sau*_*abh 5

您可以使用 in_time_zone 方法。类似于下面的东西

Time.parse("2014-09-12 04:49").in_time_zone('Pacific Time (US & Canada)')
Run Code Online (Sandbox Code Playgroud)

  • @Saurabh - 这意味着根据是否发生夏令时,您将获得 PDT 或 PST。如果您在 3 月 8 日至 11 月 1 日期间调用此方法,您将获得 PDT;如果您在 11 月 2 日至 3 月 7 日期间调用此方法,您将获得 PST。 (2认同)