如何从Python shell导入Odoo/OpenERP插件模块?
我想更多地了解Odoo的结构。我更喜欢使用IPython,但我不知道如何将插件导入环境中。起初,我只想将默认插件加载到我的环境中。因此,我只是从默认产品模块中复制了一行代码。我没有修改源代码。我一直在通过源代码搜索,找出为什么我不能像使用Python那样简单地导入插件。
我的Odoo安装工作正常。
我想更多地了解Odoo的结构。我更喜欢使用IPython,但我不知道如何将插件导入环境中。起初,我只想将默认插件加载到我的环境中。因此,我只是从默认产品模块中复制了一行代码。我没有修改源代码。我一直在通过源代码搜索,找出为什么我不能像使用Python那样简单地导入插件。
我的Odoo安装工作正常。
$ cd /opt/odoo
$ ipython
In [1]: import openerp
In [2]: openerp.modules.module?
[not much luck]
In [3]: openerp.addons?
[not much luck either, nothing here either]
In [4]: import openerp.addons
[no error]
In [5]: import openerp.addons.decimal_precision as dp # Line from addons/product/product.py
[....]
ImportError: No module named decimal_precision
< p > openerp.addons
除此之外什么都没有,但从Odoo插件模块中仍可以正常使用import openerp.addons.STUFF
。
我有一种感觉,即需要初始化addons
,但我还没有找到如何实现。我开始从openerp.main.cli()
的代码开始研究。
openerp.tools.config.parse_config()
是正确方向的一步,但这并不足够。我需要以某种方式传递--addons-path=addons
(因为Odoo不聪明到可以自己找到其插件)。
erppeek
。它很棒 [但现在我不再使用Odoo了]。 IPython 集成仍然是一个未解决的问题,但离完成也不远了 ;) https://github.com/tinyerp/erppeek/issues/51 - the