質問はタイムゾーンについて昨日(here)質問は、ルビー2.2.3上で実行されているレール5で作業されていません。Rails5 - ruby 2.2.3 // ActiveSupport :: TimeZoneの変更方法は?次
ActiveSupport::TimeZone.zones_map
どこ1は、この新しいバージョンとの間で使用の違いについて読むことができますか?同じことを達成する方法は何でしょうか?
質問はタイムゾーンについて昨日(here)質問は、ルビー2.2.3上で実行されているレール5で作業されていません。Rails5 - ruby 2.2.3 // ActiveSupport :: TimeZoneの変更方法は?次
ActiveSupport::TimeZone.zones_map
どこ1は、この新しいバージョンとの間で使用の違いについて読むことができますか?同じことを達成する方法は何でしょうか?
最良の方法は、ActiveSupport
にTimeZone
ためcurrent source codeに見ることである。zones_map
方法has been made privateので、私はあなたがRailsの5の下で、このエラーを得ていると思います:
NoMethodError: private method 'zones_map' called for ActiveSupport::TimeZone:Class
だから今、あなたは2つのオプションがあります。とにかくプライベートメソッドを呼び出すためにsend
を使用するか:
ActiveSupport::TimeZone.send(:zones_map)
または、より良い、あなたが必要とするすべてのsuggeとして(このマップのvalues
ある場合answer to your yesterday's questionに記載されています)、zones_map
をハックする必要はありません。あなたが代わりにall
メソッドを使用することができます。
ActiveSupport::TimeZone.all
sourceによると、all
方法はzones_map.values.sort
に相当し、send
何もする必要はありませんので、それは通常のパブリックメソッドです。