Rubyスクリプトに現在の日付(GMT)を取得し、ET(東部時間)に変換するコード行がいくつかあります。未初期化定数ActiveSupport :: TimeZone(NameError)
私はそのための私のRubyスクリプトでこのコードを持っている:
# get current time and date in ET
my_offset = 3600 * -5 # US Eastern
# find the zone with that offset
zone_name = ActiveSupport::TimeZone::MAPPING.keys.find do |name|
ActiveSupport::TimeZone[name].utc_offset == my_offset
end
zone = ActiveSupport::TimeZone[zone_name]
time_locally = Time.now
time_in_zone = zone.at(time_locally)
問題は、それが(まあ、このライン上で)ここでエラーを与えている:zone_name = ActiveSupport::TimeZone::MAPPING.keys.find do |name|
:uninitialized constant ActiveSupport::TimeZone (NameError)
誰もが間違っているのか知っていますか? Stack Overflowからこのコードセグメントを取得しました。here
'rubygems'が必要ですか?そのコードの先頭に 'active_support'が必要ですか?あなたがしなければそれが必要です。 – ctcherry
ええ、私はこれらのコードを自分のコードで持っています。まだ動作しません。 – swiftcode