处理时间窗口的基本模型
项目描述
本模块提供了通过time.window.mixin管理时间窗口的基本类和模型。
目录
用法
示例实现可在模块test_base_time_window中找到。
由于时间窗口始终通过M2o关系链接到相关模型,因此在定义继承混入的新模型时,应特别注意以下要点,以确保重叠检查正常工作
定义类属性_overlap_check_field:这必须指定用于检查与相关模型特定记录链接的重叠时间窗口记录的M2o字段。
在api.constrains中将M2o字段添加到相关模型中
例如
class PartnerTimeWindow(models.Model):
_name = 'partner.time.window'
_inherit = 'time.window.mixin'
partner_id = fields.Many2one(
res.partner', required=True, index=True, ondelete='cascade'
)
_overlap_check_field = 'partner_id'
@api.constrains('partner_id')
def check_window_no_overlaps(self):
return super().check_window_no_overlaps()
已知问题/路线图
使用float_time小部件存储时间需要额外的处理以确保在正确的时间区域进行计算,因为该值不是以UTC存储在数据库中,因此必须与tz字段相关联。
在这个意义上,float_time应该只用于持续时间,而不是用于“时间点”,因为这始终需要一个日期来正确进行时区转换。(因为从UTC转换到例如欧洲/布鲁塞尔不会在冬季或夏季给出相同的结果,因为夏令时)。
因此,正确的做法是使用resource.calendar来定义使用重复的DateTime的时间窗口。
错误跟踪器
错误跟踪在 GitHub 问题 上。如果遇到问题,请检查是否已有人报告过您的问题。如果是您首先发现的,请通过提供详细且受欢迎的 反馈 来帮助我们解决问题。
请不要直接联系贡献者寻求支持或技术帮助。
致谢
贡献者
Laurent Mignon <laurent.mignon@acsone.eu>
Akim Juillerat <akim.juillerat@camptocamp.com>
Trobz
Dung Tran <dungtd@trobz.com>
其他致谢
本模块的开发得到了以下机构的财务支持
Camptocamp
维护者
本模块由OCA维护。
OCA,或Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并促进其广泛使用。
本模块是GitHub上的 OCA/server-tools 项目的组成部分。
欢迎您贡献力量。有关如何贡献的信息,请访问 https://odoo-community.org/page/Contribute。
项目详情
哈希值 for odoo14_addon_base_time_window-14.0.1.0.1-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7de3e5b308bead14706c00965c573b5cbf5d81531b58d5a9feace73811d5a6ec |
|
MD5 | e41a773638f9e745298d6c2f35849748 |
|
BLAKE2b-256 | a841c1c5e1d1f5b6e0ba9e304e0c57ee42972a600ca4049c20ea274ea448c384 |