在Django项目中,最好全部日期值都做成配时区信息的,但是由于遗留项目或者跨语言项目,其他语言的开发人员觉得时区信息处理太麻烦。如何在一个项目中同时适配带时区和不带时区的两种字段。

     1、输出:不带时区信息的时间值,可以用datetime的strfttime做个格式化。带时区的时间值输出用django的date过滤器输出,不带时区的可以用notzdate过滤器输出。

     2、输入:主要是过滤条件这一步,输入的带时区字段对带时区字段做对比过滤就不用说了,正常的django就这样,不正常的是不带时区的datetime数值对不带时区的字段作对比,由于项目一般配置是使用时区的,所以导致即便输入是不带时区数值,也会当做时区0的输入,导致输入的数值会少8个小时,所以这个数值在对数据库字段作对比时,需要自己加上8个小时。

相关文章:

  • 2022-01-20
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-03
  • 2021-07-13
  • 2022-12-23
猜你喜欢
  • 2022-01-02
  • 2021-08-30
  • 2021-11-29
  • 2022-12-23
  • 2021-11-02
  • 2021-06-28
相关资源
相似解决方案