You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Odoo 12自定义模块无法导入Python第三方库问题求助

解决Odoo 12自定义模块无法导入第三方Python库的问题

确认Odoo实际使用的Python环境

Odoo大概率没用到你安装库的那个Python环境,先搞清楚它运行时依赖的Python路径:

  • 看Odoo启动命令里的Python路径,比如/usr/bin/python3或者虚拟环境下的~/odoo_venv/bin/python
  • 也可以在自定义模块里加一段调试代码,打印当前环境信息:
import sys
@api.model
def check_python_env(self):
    print("当前Python路径:", sys.executable)
    print("包搜索路径:", sys.path)

调用这个函数,根据输出确认是否和你安装库的环境匹配。

给Odoo对应的Python环境安装库

如果Odoo用的是系统Python,直接用对应版本的pip安装:

# Python3用pip3,Python2用pip
sudo pip3 install pydantic numpy

如果是虚拟环境,先激活再安装:

source ~/你的Odoo虚拟环境目录/bin/activate
pip install pydantic numpy

安装后可以在该Python环境里执行import pydantic测试是否安装成功。

配置自定义模块的依赖声明

Odoo 12不会自动识别自定义模块目录下的requirements.txt,需要在模块的__manifest__.py(或__openerp__.py)里显式声明Python依赖:

{
    'name': '你的模块名',
    'depends': ['base'],
    'data': [],
    # 添加外部Python依赖
    'external_dependencies': {
        'python': ['pydantic', 'numpy'],
    },
}

这样Odoo启动时会检查这些依赖,未安装的话会直接抛出提示。

排查权限问题

如果是系统Python环境,可能安装库时权限不足,导致库被安装到用户私有目录,而Odoo运行用户(比如odoo系统用户)无法访问。可以用--user参数安装:

pip3 install --user pydantic numpy

或者确保Odoo运行用户对库的安装目录有读取权限。

重启Odoo服务

不管用哪种方式安装完库,必须重启Odoo服务,否则Odoo不会加载新安装的第三方库。


内容的提问来源于stack exchange,提问作者Альтаир Исаметов

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 08:20:22