6

Django のタイムゾーン対応出力は、テンプレートをレンダリングするときにのみ適用されるようです。CSV または JSON を返す応答に対して、現在アクティブなタイムゾーンへの同じ自動変換を取得する方法はありますか?

4

1 に答える 1

1

テンプレートの日時を変換するために呼び出される基本的な関数はdjango.utils.timezone.template_localtime(). ソースのすぐ隣には、localtime次のような別のユーティリティ関数 があります。

def localtime(value, timezone=None):
    """
    Converts an aware datetime.datetime to local time.

    Local time is defined by the current time zone, unless another time zone
    is specified.
    """
    ...

したがって、おそらく次のようになります。

from django.utils.timezone import localtime, get_current_timezone

...

print localtime(obj.date_created, user.get_profile().timezone or get_current_timezone())
于 2013-10-09T18:44:33.603 に答える