Alan Hou的个人博客

Odoo 11灵活的插件安装-addons

这是Odoo系列文章的第二篇,完整目录请见最好用的免费ERP系统Odoo 11开发指南

前面我们一起学习了Odoo 11的安装(10分钟带你搭建史上最强的ERP系统-Odoo最新版),接下来就要开始对这个无比强大的ERP系统(说它是ERP其实不太精确,因为实在是包罗万象,官网、论坛乃至电商网站应有尽有)进一步探索的旅程了。

Odoo中可以安装自开发的插件、第三方插件以及OCA(Odoo Community Association)维护的插件。

接前例,Odoo安装的路径为~/odoo-dev/odoo,并且配置文件为~/odoo-dev/myodoo.cfg

注:本文中如无特殊说明所进行的命令行操作均在~/odoo-dev下进行

1.准备工作

在配置文件中添加~/odoo-dev/local-addons/目录

addons_path = … …,~/odoo-dev/local-addons

在~/odoo-dev/目录中重新启动实例

odoo/odoo-bin -c myodoo.cfg

小技巧

在第一次调用odoo-bin初始化数据库的时候,可以在命令中添加–addons-path,用逗号分隔,当然此处需要添加基础插件目录odoo/odoo/addons和核心插件目录odoo/addons,这种方法还要求local-addons中不能为空。后面我们再一起学习插件的开发,这里可以通过以下的hack方法来顺利完成以上命令的运行

如何更新插件列表?

在addons-path下添加文件夹,需要手动进行更新才会Odoo后台的App列表中进行更新。

首先要开启开发者模式(参见前文开发者模式部分),点击Apps>Update Apps List来进行更新。更新过程是通过读取配置文件获取到包含插件的目录,然后读取各插件目录下的__manifest__.py文件中的字典,只要installable的值不为False,系统就会对已存在的插件进行更新,尚未存在的插件进行新增。此时便可以在Apps中对其进行搜索了。

插件安装

Odoo拥有丰富的内置插件,在后台中点击Apps进行搜索并点击安装,这种方法非常简单,请读者自行尝试。下面我们讲一下如何通过命令行进行安装和更新,安装前需获取插件__manifest.py__上一级目录名,如

注意:在生产环境进行更新时请务必做好备份

安装时的基本流程为:

1.若有preinit钩子,先运行
2.从模型定义中载入Python源码并根据需要更新数据库结构
3.载入插件数据文件并更新数据库
4.若有demo数据则进行安装
5.若有postinit钩子,则运行
6.对插件的视图定义进行验证
7.若激活了测试数据和测试流程,则对插件进行测试
8.更新数据库中的模块状态
9.根据插件的翻译文件更新数据库

以上preinit钩子和postinit钩子分别通过__manifest__.py中的pre_init_hook和post_init_hook进行定义,对应值为__init.py__中的函数名。在更新插件时要注意新增的依赖需要手动进行安装。

 

退出移动版