python - PostgreSQL 在 'Local time zone' 中保存日期,而我使用 Django 将其设置为 'UTC'

标签 python django postgresql django-models django-rest-framework

我正在尝试以 UTC 格式保存日期,但它保存在我的 localtimezone 之前没问题,直到 Django view 但之后 .save() 它在数据库中存储为 'localtimezone'

我的setting.py

LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_TZ = True

模型.py

class Career(models.Model):
"""
model for storing all leads from career section of front apps
"""
name = models.CharField(max_length=200)
email = models.CharField(max_length=200)
phone = models.CharField(max_length=20, blank=True, null=True)
status = models.BooleanField(default=1)
created_on = models.DateTimeField(null=True, blank=True)
updated_on = models.DateTimeField(null=True, blank=True)

class Meta:
    db_table = 'career_leads'

我的views 文件

class CareerFormApi(APIView):
 def post(self, request):
    career_serializer = CareerPostSerializer(data=request.data)
    career_data = request.data


    if career_serializer.is_valid():
        career_serializer.validated_data['created_on'] = timezone.datetime.now()
        career_serializer.validated_data['updated_on'] = timezone.datetime.now()
        # I am geeting correct time zone here.
         print(timezone.datetime.now()) 


        career_serializer.validated_data['status'] = True

#after save  i check my Database where it saved as my localtime zone

        career_serializer.save() 

        return Response({
            'status': status_code.HTTP_201_CREATED,
            'message': 'Detail has been saved successfully.'
        }, status=status.HTTP_201_CREATED)
    return Response(career_serializer.errors, status=status.HTTP_400_BAD_REQUEST)

P.S. 我已经将我的 postgres 时区也更改为 UTC,就像这样

set timezone='UTC';

但是没有用。

最佳答案

如果你想改变 Postgresql 的时区,通过这个命令:

ALTER USER User_Name SET TimeZone TO 'utc';

然后通过这个重启postgres服务:

sudo service postgresql restart

关于python - PostgreSQL 在 'Local time zone' 中保存日期,而我使用 Django 将其设置为 'UTC',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54825990/

相关文章:

ajax - 在ajax的div.append中的id属性中添加变量

python - Django基于添加表单编辑表单?

java - PostgreSQL + Openshift : Possibly the wrong driver for the given database URL?

java - 通过数据源为 H2 设置事务隔离级别

postgresql - 将实时数据恢复到测试数据库后,为了我的实时数据的数据安全,我如何在 PostgreSQL 中清理测试数据库中的数据

python - 安装 python 模块自定义位置 PYTHONUSERBASE/virtualenv

python - 该数字属于斐波那契数列吗?

python - pip 不支持使用 sudo 的 PIP_INDEX_URL

python - 如何使用 Django REST Framework 构建嵌套路由?

python - Python 正则表达式中的方括号 (re.sub)