web-dev-qa-db-ja.com

Djangoのタイムゾーンを設定する方法?

私のDjangoプロジェクトのsettings.pyファイルには、この行があります。

TIME_ZONE = 'UTC'

しかし、私は自分のアプリをUTC + 2タイムゾーンで実行したいので、それをに変更しました。

TIME_ZONE = 'UTC+2'

エラーValueError: Incorrect timezone setting: UTC+2が発生します。これを行う正しい方法は何ですか?

ありがとうございます。

100
jeff

有効なタイムゾーンのリストはここにあります:

http://en.wikipedia.org/wiki/List_of_tz_database_time_zones

あなたが使用することができます

TIME_ZONE = 'Europe/Istanbul'

uTC + 02:00

158
Selcuk

tzデータベース からすべての有効なタイムゾーン名(ID)を取得するには、 Pythonではpytzモジュールを使用

>>> import pytz # $ pip install pytz
>>> pytz.all_timezones_set
LazySet({'Africa/Abidjan',
         'Africa/Accra',
         'Africa/Addis_Ababa',
         'Africa/Algiers',
         'Africa/Asmara',
         'Africa/Asmera',
         ...
         'UTC',
         'Universal',
         'W-SU',
         'WET',
         'Zulu'})
16
jfs

tzinfoデータベース から有効なタイムゾーンを選択してください。それらは次のような形をとる傾向があります。 Africa/GaborneUS/Eastern

あなたの最寄りの都市にマッチするもの、またはあなたのタイムゾーンを持っているものを見つけて、次にmatchにあなたのTIME_ZONEの値をセットしてください。

11
Crast

私はDjangoプロジェクトのsettings.pyファイルのタイムゾーンをイギリスに変更しようとしているのです。

Jfsのソリューションでtzデータベースを使用すると、私は答えを見つけました:

    TIME_ZONE = 'Europe/London'
2
Mark