[CPyUG] django系统时区

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[CPyUG] django系统时区

hq yang
各位:

遇到一个关于时区的问题.

在django里通过time.timezone获取时区是0, 在bash下获取则是-28800.

为何会出现这种情况, time.timezone的源码是在哪里实现的.

多谢!

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] django系统时区

ubunoon-2
time.timezone是C的实现,可以

import time
print time

在 2011年12月14日 上午11:07,hq yang <[hidden email]>写道:
各位:

遇到一个关于时区的问题.

在django里通过time.timezone获取时区是0, 在bash下获取则是-28800.

为何会出现这种情况, time.timezone的源码是在哪里实现的.

多谢!

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--
To be pythoner
My blog: http://www.cnblogs.com/ubunoon/
珍珠饰品:http://zjyuezz.cn.alibaba.com/


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] django系统时区

Joey Chang
django下面的配置文件可以设置你的时区。django读取的是自己设定的时区,实际上是通过os.environ('TZ') = 'xxx' 设置的一个临时的环境变量
而bash里面读取的系统设定的时区(系统设置的TZ值), -28800 就是表示 Asia/Shanghai

在 2011年12月14日 下午6:29,ubunoon <[hidden email]>写道:
time.timezone是C的实现,可以

import time
print time

在 2011年12月14日 上午11:07,hq yang <[hidden email]>写道:

各位:

遇到一个关于时区的问题.

在django里通过time.timezone获取时区是0, 在bash下获取则是-28800.

为何会出现这种情况, time.timezone的源码是在哪里实现的.

多谢!

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--
To be pythoner
My blog: http://www.cnblogs.com/ubunoon/
珍珠饰品:http://zjyuezz.cn.alibaba.com/


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] django系统时区

Joey Chang
看来我的解释还有待指正, 我自己echo $TZ, 却没有输出.

在 2011年12月15日 上午11:47,Jian Chang <[hidden email]>写道:
django下面的配置文件可以设置你的时区。django读取的是自己设定的时区,实际上是通过os.environ('TZ') = 'xxx' 设置的一个临时的环境变量
而bash里面读取的系统设定的时区(系统设置的TZ值), -28800 就是表示 Asia/Shanghai

在 2011年12月14日 下午6:29,ubunoon <[hidden email]>写道:

time.timezone是C的实现,可以

import time
print time

在 2011年12月14日 上午11:07,hq yang <[hidden email]>写道:

各位:

遇到一个关于时区的问题.

在django里通过time.timezone获取时区是0, 在bash下获取则是-28800.

为何会出现这种情况, time.timezone的源码是在哪里实现的.

多谢!

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--
To be pythoner
My blog: http://www.cnblogs.com/ubunoon/
珍珠饰品:http://zjyuezz.cn.alibaba.com/


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] django系统时区

hq yang
发一下自己调查的进展吧

1: python的time模块是用c实现的(感谢ubunoon)
2: 时区的获取是用localtime初始化的
3: localtime优先从进程的环境变量中读取时区,不存在则查找系统配置(/etc/localtime)

问题中bash下的现象即为如此

django中的现象仍无法解释, 继续调查,过程如下

1: 修改timemodule中timezone初始化,添加debug输出,编译后替换到django环境中
2: 执行python django shell, 发现timezone被初始化了两次,分别为系统时区和0
3: 查看django源码,继续debug,发现在执行
django/core/management/__init__.py中get_commands函数的
from django.conf import settings
apps = settings.INSTALLED_APPS
分别更新了timezone.

django不熟,各位继续吧


在 2011年12月15日 上午11:52,Jian Chang <[hidden email]>写道:
看来我的解释还有待指正, 我自己echo $TZ, 却没有输出.

在 2011年12月15日 上午11:47,Jian Chang <[hidden email]>写道:

django下面的配置文件可以设置你的时区。django读取的是自己设定的时区,实际上是通过os.environ('TZ') = 'xxx' 设置的一个临时的环境变量
而bash里面读取的系统设定的时区(系统设置的TZ值), -28800 就是表示 Asia/Shanghai

在 2011年12月14日 下午6:29,ubunoon <[hidden email]>写道:

time.timezone是C的实现,可以

import time
print time

在 2011年12月14日 上午11:07,hq yang <[hidden email]>写道:

各位:

遇到一个关于时区的问题.

在django里通过time.timezone获取时区是0, 在bash下获取则是-28800.

为何会出现这种情况, time.timezone的源码是在哪里实现的.

多谢!

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--
To be pythoner
My blog: http://www.cnblogs.com/ubunoon/
珍珠饰品:http://zjyuezz.cn.alibaba.com/


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html
Reply | Threaded
Open this post in threaded view
|

Re: [CPyUG] django系统时区

Joey Chang
第三点, 正好解决我的疑问

在 2011年12月15日 下午5:57,hq yang <[hidden email]>写道:
发一下自己调查的进展吧

1: python的time模块是用c实现的(感谢ubunoon)
2: 时区的获取是用localtime初始化的
3: localtime优先从进程的环境变量中读取时区,不存在则查找系统配置(/etc/localtime)

问题中bash下的现象即为如此

django中的现象仍无法解释, 继续调查,过程如下

1: 修改timemodule中timezone初始化,添加debug输出,编译后替换到django环境中
2: 执行python django shell, 发现timezone被初始化了两次,分别为系统时区和0
3: 查看django源码,继续debug,发现在执行
django/core/management/__init__.py中get_commands函数的
from django.conf import settings
apps = settings.INSTALLED_APPS
分别更新了timezone.

django不熟,各位继续吧


在 2011年12月15日 上午11:52,Jian Chang <[hidden email]>写道:

看来我的解释还有待指正, 我自己echo $TZ, 却没有输出.

在 2011年12月15日 上午11:47,Jian Chang <[hidden email]>写道:

django下面的配置文件可以设置你的时区。django读取的是自己设定的时区,实际上是通过os.environ('TZ') = 'xxx' 设置的一个临时的环境变量
而bash里面读取的系统设定的时区(系统设置的TZ值), -28800 就是表示 Asia/Shanghai

在 2011年12月14日 下午6:29,ubunoon <[hidden email]>写道:

time.timezone是C的实现,可以

import time
print time

在 2011年12月14日 上午11:07,hq yang <[hidden email]>写道:

各位:

遇到一个关于时区的问题.

在django里通过time.timezone获取时区是0, 在bash下获取则是-28800.

为何会出现这种情况, time.timezone的源码是在哪里实现的.

多谢!

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html



--
To be pythoner
My blog: http://www.cnblogs.com/ubunoon/
珍珠饰品:http://zjyuezz.cn.alibaba.com/


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html


--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
发言: [hidden email]
退订: [hidden email] (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html