跳转到主要内容

组件事件

项目描述

Beta License: LGPL-3 OCA/connector Translate me on Weblate Try me on Runboat

本模块实现了一个事件系统(观察者模式)并作为连接器框架的基础块。即使不使用完整的连接器也可以使用它。它基于component模块。

文档: http://odoo-connector.com/

目录

用法

作为开发者,您有权访问事件系统。您可以在代码中或http://odoo-connector.com找到文档

简而言之,您可以创建触发事件

class Base(models.AbstractModel):
    _inherit = 'base'

    @api.model
    def create(self, vals):
        record = super(Base, self).create(vals)
        self._event('on_record_create').notify(record, fields=vals.keys())
        return record

并为事件订阅监听器

from odoo.addons.component.core import Component
from odoo.addons.component_event import skip_if

class MagentoListener(Component):
    _name = 'magento.event.listener'
    _inherit = 'base.connector.listener'

    @skip_if(lambda self, record, **kwargs: self.no_connector_export(record))
    def on_record_create(self, record, fields=None):
        """ Called when a record is created """
        record.with_delay().export_record(fields=fields)

本模块触发3个事件

  • on_record_create(record, fields=None)

  • on_record_write(record, fields=None)

  • on_record_unlink(record)

变更日志

下一页

12.0.1.0.0 (2018-11-26)

  • [迁移] 从12.0分支在rev. 324e006

错误追踪器

错误在GitHub Issues上跟踪。如果遇到问题,请先检查是否已报告您的问题。如果您是第一个发现它的人,请通过提供详细且受欢迎的反馈来帮助我们消除它。

请不要直接联系贡献者寻求支持或帮助解决技术问题。

致谢

作者

  • Camptocamp

贡献者

维护者

本模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并促进其广泛使用。

本模块是GitHub上OCA/connector项目的一部分。OCA/connector

欢迎您贡献。了解如何贡献,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码发行版

此版本没有提供源代码发行版文件。有关如何生成发行版存档的教程,请参阅生成发行版存档

构建发行版

由以下组织支持