vuvivian's blog

越努力,越幸运.

  1. 1. 注册
  • 注册

Odoo生态系统的一个常见需求是从外部扩展/更改基本系统的行为(通过安装应用程序,即不同的模块)。例如,可能需要在某些视图中添加新的小部件类型。在这种情况下,以及其他许多情况下,通常的过程是创建所需的组件,然后将其添加到注册表(注册步骤),以使Web客户机的其余部分知道它的存在。
一下是一些在系统中可用的注册:

  • 字段注册表(由“web.field_registry”导出)。字段注册表包含Web客户端已知的所有字段小部件。每当视图(通常是表单或列表/看板)需要字段小部件时,这就是它将要查找的地方。典型的用例如下所示:
1
2
3
4
5
var fieldRegistry = require('web.field_registry');

var FieldPad = ...;

fieldRegistry.add('pad', FieldPad);

注意,每个值都应该是AbstractField的子类

  • 视图注册表:此注册表包含Web客户端已知的所有JS视图

(尤其是视图管理器)。此注册表的每个值都应该是AbstractView的子类

  • 动作注册表:我们跟踪此注册表中的所有客户端动作。这个是动作管理器在需要创建客户端操作时查找的位置。在版本11中,每个值应该只是小部件的一个子类。但是,在版本12中,值必须是abstractAction。
本文最后更新于 天前,文中所描述的信息可能已发生改变