0

尝试了以下方法:

config.time_zone = 'Pretoria'
config.active_record.default_timezone = 'Pretoria'

没有收到任何错误,但它仍然显示为伦敦时间而不是比勒陀利亚,即 +2 小时。

知道为什么吗?

4

1 回答 1

0

也许尝试在每个请求上设置时区?这样,您最终可以让用户设置自己的时区,并且每个请求都可以与他们的时区设置相关。

class ApplicationController < ActionController::Base
  around_filter :set_time_zone

  def set_time_zone
    if logged_in?
      Time.use_zone(current_user.time_zone) { yield }
    else
      yield
    end
  end
end

http://api.rubyonrails.org/classes/Time.html#method-i-zone-3D

于 2014-07-09T05:33:18.353 回答