2017-01-11 13 views
1

特定の国/地域を選択すると、ルビーの国/地域リストを表示するコードを探しています。タイムゾーンが表示されます。たとえば、国/地域として「イギリス」を選択すると、タイムゾーンとして「(GMT +00:00)London」と表示されます。私のアプリケーションはRails 3.2.11で動作します。私は gemとすべての時間帯を使用してすべての国を表示していますActiveSupport :: TimeZone。 Ruby on Railsがデフォルトでこの機能を提供しているかどうか、あるいはこれを実現する他の方法があるかどうかを知りたい。国のタイムゾーンを一覧表示する

+0

私は理解できません。すでに何かを書いていて、それが直接行えるかどうかを知りたいですか?もしそうなら、あなたは何を書いたのですか? –

答えて

2

TimeZoneクラスを使用できます。あなたは、すべてのタイムゾーンのリストを取得することができます。

zones_hash = ActiveSupport::TimeZone::MAPPING 

そして、あなたは、次のようにどの国のタイムゾーンを取得することができます。

country_zone = ActiveSupport::TimeZone.new("Europe/Skopje") 
country_zone.formatted_offset 

出力:上記の例+01:00

+0

ありがとうございました。これは本当に機能します。しかし、私が( 'US')や( 'AE')のような引数を渡すかどうかを知りたいのですが、タイムゾーンを教えてくれますか?それのための方法はありますか? –

+0

@ShabiniRajadasあなたはマッピングハッシュから文字列を使うべきです。 'ActiveSupport :: TimeZone.new("太平洋標準時間(米国とカナダ) ")'または 'ActiveSupport :: TimeZone.new("山岳時間(米国&カナダ) ")' .. 'あなたは場所を指定する必要があるからです。 –

関連する問題