“使用时间和日期”的版本间的差异

来自Odoo大V社-odoo中文开发手册
跳转至: 导航搜索
(创建页面,内容为“由于历史原因,ORM记录集处理date和datetime时间值使用他们的字符串表示,而不是实际的Python date和Datetime对象。在数据库中,...”)
 
第7行: 第7行:
  
 
协助处理日期,fields.Date和fields.Datetime提供几个函数。例如︰
 
协助处理日期,fields.Date和fields.Datetime提供几个函数。例如︰
 +
 +
 +
<nowiki>>>> from odoo import fields
 +
>>> fields.Datetime.now()
 +
'2014-12-08 23:36:09'
 +
>>> fields.Datetime.from_string('2014-12-08 23:36:09')
 +
datetime.datetime(2014, 12, 8, 23, 36, 9)
 +
</nowiki>
 +
 +
日期和时间由服务器处理和存储在一个简单的UTC格式中,这可能不同于用户正在处理的时区中的服务器的日期和时间。正因为如此,我们可以使用的其他一些功能,来帮助我们处理这个问题︰
 +
 +
 +
 fields.Date.today() 返回当前日期的字符串格式,并使用UTC作为参考是服务器所期望的。这是符合计算机的默认值。
 +
 fields.Datetime.now() 返回一个带有当前datetime的字符串,并使用UTC作为参考的格式是服务器所期望的。这是符合计算机的默认值。
 +
 fields.Date.context_today(record, timestamp=None)返回一个在会话的上下文中使用当前日期。时区值是从记录的上下文中获取,并使用可选参数datetime而不是当前时间。
 +
 fields.Datetime.context_timestamp(record, timestamp) 转换一个真实的datetime(没有时区)进入一个时区感知的datetime。那时区是从记录的上下文中提取出来的,因此做为函数的名字。
 +
 +
促进格式之间的转换,这两个fields.Date和fields.Datetime提供了这些功能︰
 +
 +
 +
 rom_string(value)将字符串转换为日期或datetime对象
 +
 to_string(value)转换为一个date或datetime对象为字符串是服务器所期望的格式 

2017年5月28日 (日) 22:59的版本

由于历史原因,ORM记录集处理date和datetime时间值使用他们的字符串表示,而不是实际的Python date和Datetime对象。在数据库中,它们存储在date字段中,但是datetimes存储在UTC时间。

odoo.tools.DEFAULT_SERVER_DATE_FORMAT odoo.tools.DEFAULT_SERVER_DATETIME_FORMAT

他们映射到%Y-%m-%d和%Y-%m-%d %H:%M:%S分别。

协助处理日期,fields.Date和fields.Datetime提供几个函数。例如︰


>>> from odoo import fields
>>> fields.Datetime.now()
'2014-12-08 23:36:09'
>>> fields.Datetime.from_string('2014-12-08 23:36:09')
datetime.datetime(2014, 12, 8, 23, 36, 9)
 

日期和时间由服务器处理和存储在一个简单的UTC格式中,这可能不同于用户正在处理的时区中的服务器的日期和时间。正因为如此,我们可以使用的其他一些功能,来帮助我们处理这个问题︰


 fields.Date.today() 返回当前日期的字符串格式,并使用UTC作为参考是服务器所期望的。这是符合计算机的默认值。  fields.Datetime.now() 返回一个带有当前datetime的字符串,并使用UTC作为参考的格式是服务器所期望的。这是符合计算机的默认值。  fields.Date.context_today(record, timestamp=None)返回一个在会话的上下文中使用当前日期。时区值是从记录的上下文中获取,并使用可选参数datetime而不是当前时间。  fields.Datetime.context_timestamp(record, timestamp) 转换一个真实的datetime(没有时区)进入一个时区感知的datetime。那时区是从记录的上下文中提取出来的,因此做为函数的名字。

促进格式之间的转换,这两个fields.Date和fields.Datetime提供了这些功能︰


 rom_string(value)将字符串转换为日期或datetime对象  to_string(value)转换为一个date或datetime对象为字符串是服务器所期望的格式