【Python】Django 时间字段 最佳实践
. python datetime
from datetime import datetime
datetime.now()
datetime.utcnow() from datetime import datetime,timezone,timedelta
dt = datetime.utcnow()
print(dt)
dt = dt.replace(tzinfo=timezone.utc)
print(dt)
tzutc_8 = timezone(timedelta(hours=))
local_dt = dt.astimezone(tzutc_8)
print(local_dt) .django timezone
from django.utils import timezone
timezone.now() from datetime import datetime
datetime.now()
import pytz #pytz.country_timezones('cn')[0]
#u'Asia/Shanghai' tz = pytz.timezone(pytz.country_timezones('cn')[0])
datetime.now(tz)
#datetime.datetime(2016, 10, 18, 14, 40, 24, 950672, tzinfo=<DstTzInfo 'Asia/Shanghai' CST+8:00:00 STD>) datetime.now(tz=None)
datetime.datetime(2016, 10, 18, 6, 40, 43, 725325) 参考资料:
https://segmentfault.com/q/1010000000148274
http://ar.newsmth.net/thread-f9b7985b2132c6.html
http://www.zhihu.com/question/27934615
http://stackoverflow.com/questions/18622007/runtimewarning-datetimefield-received-a-naive-datetime
http://www.cnblogs.com/lhj588/archive/2012/04/23/2466653.html
http://www.360doc.com/content/14/0626/18/8504707_390057412.shtml
Model定义:
class Test(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=, 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
http://tool.chinaz.com/tools/native_ascii.aspx
http://tool.lu/timestamp
https://my.oschina.net/u/1032854/blog/198179
【Python】Django 时间字段 最佳实践的更多相关文章
- Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt)
Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt) 作者: Desmond Chen,发布日期: 2014-05- ...
- python高级编程之最佳实践,描述符与属性01
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #最佳实践 """ 为了避免前面所有的 ...
- Django 1.6 最佳实践: django项目的服务器自动化部署(转)
原文:http://www.weiguda.com/blog/41/ 当我们设置服务器时, 不应该每次都使用ssh登录服务器, 再按照记忆一步一步的配置. 因为这样实在是太容易忘记某些步骤了. 服务器 ...
- Python Django ORM 字段类型、参数、外键操作
AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bigint自增列,必须填入参数 primary ...
- Django 1.6 最佳实践: 如何正确使用 Signal(转)
原文:http://www.weiguda.com/blog/38/ 如何正确的使用signal: 简单回答是: 在其他方法无法使用的情况下, 才最后考虑使用signal. 因为新的django开发人 ...
- Django REST Framework 最佳实践
Django REST framework 是一个强大且灵活的工具包,用以构建Web APIs. 为什么要使用REST framework? - 在线可视的API,对于赢得你的开发者们十分有用 - 验 ...
- django 强制登录最佳实践
参考: https://python-programming.courses/recipes/django-require-authentication-pages/ 即通过中间件来做AOP拦截.不用 ...
- 【转】Python开发指南:最佳实践精选
总体原则 价值 “为别人开发你也想要使用的工具.” ——Kenneth Reitz "简洁总是胜过可用." ——Pieter Hintjens "满足90%的使用场景.忽 ...
- Django 1.6 最佳实践: 如何设置和使用 Log(转)
原文: http://www.weiguda.com/blog/37/ 任何参与过高要求的大型项目的编程人员都明白设置适当的log等级, 创建不同的logger, 记录重要事件的重要性. 正确的设置和 ...
随机推荐
- iOS边练边学--NSURLConnection发送HTTP请求以及NSString和NSData的相互转换
HTTP请求的常见方法 GET 所有参数拼接在URL后面,并且参数之间用&隔开 比如http://520it.com?name=123&pwd=345 传递了2个参数给服务器 name ...
- 【codevs 1200】【NOIP 2012】同余方程 拓展欧几里德求乘法逆元模板题
模板,,, #include<cstdio> using namespace std; void exgcd(long long a,long long b,long long & ...
- C语言+SDL2 图形化编程
程设大作业小火车第一版本是命令行界面,第二版本是图形化界面,由于egg库对以后工程开发没有用,我不想用egg库,花了很长时间浏览了一下OpenGL的中文教程,觉得好复杂,需要看很多很多才能写出个简单的 ...
- 重写UIPageControl实现自定义按钮
有时候UIPageControl需要用到白色的背景, 那么会导致上面的点按钮看不见或不清楚,我们可以通过继承该类重写函数来更换点按钮的图片现实.实现思路如下.新建类继承UIPageControl : ...
- BZOJ-1036 树的统计Count 链剖线段树(模板)=(树链剖分+线段树)
潇爷昨天刚刚讲完...感觉得还可以...对着模板打了个模板...还是不喜欢用指针.... 1036: [ZJOI2008]树的统计Count Time Limit: 10 Sec Memory Lim ...
- POJ1201 Intervals
Description You are given n closed, integer intervals [ai, bi] and n integers c1, ..., cn. Write a p ...
- MySql与Java的时间类型
MySql的时间类型有 Java中与之对应的时间类型date java.sql.DateDatet ...
- uva 10723 Cyborg Genes(LCS变形)
题目:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=107450#problem/C 题意:输入两个字符串,找一个最短的串,使得输入的两个 ...
- easyui form submit 不提交
http://bbs.csdn.net/topics/390811964 function saveProduct() { //$('#fm').form('submit', ...
- Spring学习6-Spring整合Struts2
一.Spring为什么要整合Struts2 Struts2与Spring进行整合的根本目的就是要让 Spring为Struts2的Action注入所需的资源对象,它们整合的原理则是只要导入了s ...