Как импортировать дополнительный модуль Odoo / OpenERP из оболочки Python?
Я хочу узнать больше о структуре Odoo. Я предпочитаю делать это через IPython, но не знаю, как импортировать дополнения в среду. Для начала я просто хочу загрузить аддон по умолчанию в свою среду. Поэтому я просто скопировал строку из модуля Product по умолчанию. Я ничего не менял в исходном коде. Я просматривал исходный код, чтобы выяснить, почему я не могу просто импортировать аддон в папку, к которой я привык с 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
openerp.addons
ничего не имеет, но все же import openerp.addons.STUFF
отлично работает с дополнительными модулями Odoo.
У меня такое чувство, что addons
нужно инициализировать, но я не понял, как это сделать. Я начал перебирать код от openerp.main.cli()
.
openerp.tools.config.parse_config()
- шаг в правильном направлении, но этого недостаточно. Мне также нужно как-то передать --addons-path=addons
(поскольку Odoo недостаточно умен, чтобы находить свои собственные аддоны).