2017-02-07 7 views
2

サーバーの日付がDD-MM-YYYY (タイムゾーンから取得)の場合、どのようにしてユーザーの対応する日付に変更できますか?Djangoサーバーの日付を現地の日付に変換する

は、これはあなたを助けるかもしれ

+0

[この回答を見る](http://stackoverflow.com/questions/30439119/getting-correct-local-time-zone-to-display-for-end-users-in-django-web -app)。これは重複する可能性があります。 –

答えて

1

ユーザーのタイムゾーンに関して、対応する日付を表示する必要があります: -

settings.py:- 

    settings.TIME_ZONE = 'Your Timezone' 

views.py :- 


    from django.utils.timezone import localtime 

    result = localtime(some_time_object) 

localtimeは、デフォルトでは、あなたがsettings.pyに設定されているTIME_ZONEに日付オブジェクトに変換します'America/Chicago'を使用します

2

同じ問題が発生したとき、私はさまざまなソリューションを試しました。

最も簡単なのは、テンプレートに{{ created|date:"d-M-Y G:i" }}を追加することです。フォーマットにかかわらず、必要に応じてフォーマットすることができます。それはディスプレイの問題だけです。

あなたのsettings.py

DATE_FORMAT = 'd-m-Y' 
TIME_FORMAT = 'H:i' 
DATETIME_FORMAT = 'd-m-Y H:i' 
YEAR_MONTH_FORMAT = 'F Y' 

MONTH_DAY_FORMAT = 'F j' 
SHORT_DATE_FORMAT = 'd/m/Y' 
SHORT_DATETIME_FORMAT = 'd/m/Y P' 
FIRST_DAY_OF_WEEK = 1 

# BUT here use the Python strftime format syntax, 
# LIST: http://docs.python.org/library/datetime.html#strftime-strptime-behavior 

DATE_INPUT_FORMATS = (
    '%d-%m-%Y',  # '21-03-2014' 
) 
TIME_INPUT_FORMATS = (
    '%H:%M:%S',  # '17:59:59' 
    '%H:%M',  # '17:59' 
) 
DATETIME_INPUT_FORMATS = (
    '%d-%m-%Y %H:%M:%S',# '21-03-2014 17:59' 
    '%d-%m-%Y', 
) 

のデフォルトフォーマットを設定..andあなたのフォームのためにそれらのいくつかを使用しようとすることができます。

関連する問題