日期时间字段的本地时间

时间:2018-08-11 09:52:05

标签: python django django-rest-framework timezone

我有一个模型,其中有一个Datetime字段

class MyModel(models.Model):

...
created_at = models.DatetimeField(auto_now_add=True)

用于时区配置的settings.py:

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True

我有两个问题:

首先,当我想在admin中显示created_at时,如何显示本地时间

同样,当我在序列化程序中使用它时,

秒:

class MySerializer(ModelSerializer):
    class Meta:
        model = MyModel
        fields = (..., 'created_at',)

注意:我的应用有来自不同国家的用户。

我实际上要从客户端获取用户的时区

1 个答案:

答案 0 :(得分:0)

实际上,我在django或django rest中找不到用户的本地时区。我只是将日期时间以UTC格式存储在数据库中,然后将其转换为前端的本地时区。我的前端是Angular 5.0。然后,我可以使用 date 点线进行此转换。

根据语言环境规则设置日期值的格式。

{{ value_expression | date [ : format [ : timezone [ : locale ] ] ] }}

示例:

{{ created_at | date: 'short' }}

输出: 18年5月8日,下午3:15