常见的开发模式
一般常见owl融入odoo的方式有三种
路由的方式
通过路由的方式提供odoo模块,不会有odoo默认的菜单,是一张完全空白,可以自由实现功能的地方
上面的示例可以看出,在awesome_owl路由下,可以自由实现一些功能
核心代码:

不依赖odoo方式
如果我们需要在odoo的页面中开发,又不需要odoo提供的默认组件,可以使用这种方式
通过以上示例可以看出,这个自定义模块拥有odoo的菜单,但是没有了默认的查询,新增等暂时不需要的内容
核心代码:
将layout组件设置 display="{controlPanel: {}}" 禁用掉系统的默认布局
依赖odoo方式
通常我们更多的场景是基于目前的模块,新增功能组件进行拓展,这时候就需要这种方式
服务
服务是一个提供odoo原生功能的代码段,通俗来讲是属于一个依赖注入的过程。

这是一个简单的调用rpc服务的例子。
常用的服务
Http 服务: 此服务提供了一种发送和 http 请求的方法
通知服务: 该服务允许在屏幕上显示通知
路由器服务: 该服务提供三个功能(有关当前路由的信息、应用程序根据其状态更新 URL 的方法、监听每个哈希更改,并通知应用程序的其余部分)
RPC 服务: 该服务提供单个异步函数,用于将请求发送到 服务器
标题服务: 该服务提供了一个简单的 API,允许读取/修改文档 标题
用户服务: 该服务提供了大量数据和一些辅助函数 已连接的用户
LoadJS
loadJS是odoo提供引入外部js资源的一个函数,
这里的示例,我们通过loadJS引入了echarts的js,方便组件内部使用
OWL进阶