在Odoo 实例中产生新的模块并安装,对于初学者总会容易搞不清。下面一起来熟悉这一点。
查找社区模块
网络上有很多 Odoo 模块,Odoo应用商店可以下载一系列模块安装到系统中。另一个重要的资源是Odoo 社区联盟(OCA - Odoo Community Association)维护的模块,可在 GitHub 上查找。OCA 是一个协调社区贡献的非营利组织,它同时提升软件质量,推广最佳开发实践和开源价值观。可通过https://odoo-community.org/来进一步了解 OCA。
为 Odoo 添加模块,仅需将其拷贝到官方插件的 addons 文件夹中即可,按前述安装即为~/odoo-dev/odoo/addons/。但这不是一个好的实践,我们安装的 Odoo 是由 Git 版本控制的代码仓库,将会与上游 GitHub 仓库保持同步,在其中加入外部插件会不利于管理。
避免这一点,我们可以选取一个或多个存放模块的目录,让 Odoo 服务也会从该目录中查找模块来使用。我们不仅可以把自定义模块放在一个不同的目录下不与官方的混在一起,还可以通过不同目录组织这些模块。
我们可以通过下载系统课程的代码来准备供 Odoo 安装的插件模块,获取 GitHub 上的源码,执行如下命令:
cd /home/tderp/.conda/envs/odoo12/odoo-dev/
mkdir community_odoo
cd community_odoo
git clone https://github.com/PacktPublishing/Odoo-12-Development-Essentials-Fourth-Edition.git library
此时与/odoo同级的community_odoo/library文件夹中将包含一些模块,现在就需告知 Odoo 这个新的模块目录。
配置插件(add-ons)路径
Odoo 服务有一个addons_path参数可设置查找插件的路径,默认指向Odoo 服务所运行处的/addons文件夹。我们可以指定多个插件目录,这样就可以把自定义模块放到另一个目录下,无需与官方插件混到一起。
通过如下命令可包含新的模块路径来运行服务:
/home/tderp/.conda/envs/odoo12/odoo-dev/odoo/odoo-bin --addons-path="/home/tderp/.conda/envs/odoo12/odoo-dev/community_odoo/library,/home/tderp/.conda/envs/odoo12/odoo-dev/odoo/addons"
#为了不受干扰,这里参数中使用绝对路径,多个路径用逗号隔开
仔细看服务日志,会发现有一行报告插件路径,信息类似INFO ? odoo: addons paths: […],确认下里面是否有library/目录。
登录ODOO,刷新本地应用后,也可以看到多了关于library的四个应用
视频演示:
https://download.csdn.net/download/r_nznf/12883249