PythonDjango 时间字段 最佳实践

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PythonDjango 时间字段 最佳实践相关的知识,希望对你有一定的参考价值。

Model定义:

class Test(models.Model):
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=128, unique=True, db_index=True)
    #create_time = models.DateTimeField(auto_now_add=True, db_index=True)
    #update_time = models.DateTimeField(auto_now=True, db_index=True)
    create_time = models.DateTimeField(default=timezone.now, db_index=True)
    update_time = models.DateTimeField(default=timezone.now)
    description = models.TextField(null=False, blank=True)

datetime转化为时间戳:

from datetime import datetime
from django.utils import timezone
from django.utils.timezone import utc

time.mktime(timezone.now().timetuple())

时间戳转化为datetime:

datetime.utcfromtimestamp(1476321626.0).replace(tzinfo=utc)

 

 

参考资料:

http://stackoverflow.com/questions/13225890/django-default-timezone-now-saves-records-using-old-time

时间戳与datetime相互转换:http://blog.sina.com.cn/s/blog_771875550101jfw2.html

 

以上是关于PythonDjango 时间字段 最佳实践的主要内容,如果未能解决你的问题,请参考以下文章

价值回报方法JPQL的最佳实践

Linq to SQL 通过 BLL 问题更新 - 最佳实践

GraphQL 编辑需要授权的字段的最佳实践

Mybatis plus通用字段自动填充的最佳实践总结

在数据库中存储动态字段时的最佳实践

使用外键字段的最佳实践