跳至内容

以Odoo19为例,配置Vscode的Ai开发升级环境

配置Odoo19,Odoo18~13等多版本并存的开发环境,并使用Claude Code和阿里通义灵码等Ai大模型自动化开发
以Odoo19为例,配置Vscode的Ai开发升级环境

经过一个月的高强度开发,我们已完成了自有模块的最新升级至Odoo19,也完成了公司管理Odoo的升级,以及若干客户的Odoo19升级。小结下,Odoo19已基本完善,通过odoo官方的升级可以很方便的将企业版Odoo快速升级至最新19。对于社区版用户,使用OCA和我们补全的升级脚本,完全可以安全的升级至最新Odoo19,享受更快更全更Ai的功能。
下方将简述一下升级至Odoo19的基础化配置。相关配置已内置于我们 Odoo绿色版免费下载 中,下文可以让你 3分钟 快速获取升级关键。


一、如何配置 VSCode 开发升级 Odoo模块


因为更强的Ai功能及更轻的资源要求,建议将开发平台从Pycharm等转至VSCode,或者Opencode和字节的TRAE。

以VSCode为例,其它基本类似。配置 Odoo 开发环境,首先需要进行一些基本设置,包括配置 Python 路径、Odoo 启动服务以及代码自动补全。主要文件为 launch.json 

1.1,配置 Python 路径

  1. 打开 VSCode,点击vscode 运行–打开配置(或添加配置),如果没有Python选项,则按 Ctrl + Shift + P 打开命令面板,输入 Python: Select Interpreter 并选择你的 Python 解释器路径。由于我们有Odoo10~Odoo19多个版本要维护管理,各自使用各自的环境,故一般直接输入已配置好的Python路径。
  2. 在这里,我们选用我们绿色版Odoo19的Python3.12解释器,位于 D:\odoo19-x64\runtime\python3\python3.exe ,直接输入或者浏览即可。可以在本站最下方,找到Odoo全版本的下载链接,每个版本都会有适配的Python运行环境。
  3. 当然,你也可以直接使用 vs 的Python插件。如果未安装,请在扩展市场中搜索并安装。

    1.1,配置 Python 路径


  4. 如果你也和我们一样,管理多个版本Odoo,那么最好配置好默认的Python环境,比如我们当前在odoo19开发,但主客户版本仍是 Odoo18,那么请在设置中设置好默认Python解释器。
    1. 在VSCode中,点击左侧菜单栏的“文件”菜单,选择“首选项”下的“设置”。
    2. 在设置面板中,使用搜索框输入“Python: Default Interpreter Path”以找到相关选项
    3. 输入主版本配置,如 D:\odoo18-x64\runtime\python3\python3.exe
      1.1,配置 Python 路径


1.2,配置 Odoo 启动服务

  • 下文中,均基于我们基础的 Odoo19-x64 绿色版
  • 在 VSCode 中创建一个新的调试配置文件 .vscode/launch.json,并添加以下内容,配置名“o19-8019-a91”,代表Odoo19,运行在8019端口,实例名为 a91。主要是因为我们即使是Odoo19,也会经常同时跑多个项目,主要的Odoo启动配置在 8019_all.conf 中
  • 以下为 launch.json ,适用于 1个实例,可根据自已的情况配置多个实例。

{

    // 使用 IntelliSense 了解相关属性。

    // 悬停以查看现有属性的描述。

    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387

    "version": "0.2.0",

    "configurations": [            

        {

            "name": "o19-8019-a91",

            "type": "debugpy",

            "request": "launch",

            "program": "D:\\odoo19-x64\\source\\odoo-bin",

            "python":"D:\\odoo19-x64\\runtime\\python3\\python.exe",

            "console": "integratedTerminal",

            "args": [

                "-c",

                "8019_all.conf",

                "-d",

                "a91",

            ],

        }

    ]

}

此配置将启动 Odoo 服务,如需自动更新指定的模块,则在 args中增加 "-u", "xxx要更新的模块" 。


1.3, 配置代码自动补全

  1. 按 Ctrl + Shift + P 打开命令面板,选择 Preferences: Open Settings (JSON)
  2. 在打开的设置文件中添加以下内容,参考注释更改为自己的内容即可:

{

    "editor.renderWhitespace": "all",

    "git.autofetch": true,

    "git.confirmSync": false,

    //定义python的路径, 自己的python路径 eg: C:\\Program Files (x86)\\python\\python.exe

    "python.defaultInterpreterPath": "D:\\odoo19-x64\\runtime\\python3\\python3.exe",

    //添加python扩展

    "python.autoComplete.extraPaths": [

        "D:\\odoo19-x64\\runtime\\python3\\Lib\\site-packages",

    ],

    // 配置格式化代码, 此处我用的 autopep8, vscode中还有其他格式化代码插件,可自行选择

    "python.formatting.provider": "autopep8",

    "python.linting.flake8Args": [

        "--max-line-length=248",

        "--extend-ignore=E231,E203,E117,E302,E225,E228,W291,E305,W191,W292,W391,F401",

    ],

    "python.linting.enabled": false,

    // 配置编写完成多少毫秒自动保存

    "files.autoSave": "afterDelay",

    "files.autoSaveDelay": 200,

    // 隐藏指定文件夹及文件

    "files.exclude": {

        "**/.git": true,

        "**/.svn": true,

        "**/.hg": true,

        "**/CVS": true,

        "**/.DS_Store": true,

        "**/Thumbs.db": true,

        "**/*.pyc": true,

        "**/_s": true,

        "**/.idea": true,

        "**/.vscode": true,

    },

    // 部署配置按项目情况处理

此配置将启用 Odoo 源码目录的自动补全,并设置代码格式化工具和自动保存功能。


1.4, 配置Claude Code或者阿里灵码

起步很简单,在vscode扩展商店中搜索 Claude 和 Tongyi ,安装即可。 这个和在我们 odooapp.cn 的欧度中文商店搜索应用安装来扩展你的Odoo一样简单。

Claude和阿里灵码的同时使用,要用科学上网加Clash来做路由分支,其它使用建议直接问你的灵码就可以了。不建议使用不合规的平台,花更多的投入才能有更多回报,商业对等永远是第一原则。

通过以上步骤,你可以在 VSCode 中高效地进行 Odoo 开发和调试了,记得要先完成所有模块升级至Odoo19。

1.4, 配置Claude Code或者阿里灵码


二、如何配置多版本 Odoo 来升级至 Odoo19


由于大量的Odoo存量客户在使用旧版本,我们经常需要同时跑多个实例,使用Docker会方便些,但也十分笨重,同时不好跟踪管理。因此,我们是使用每个Odoo版本独立管理配置,使用Git来记录配置变化,以便处理和追溯各种复杂情况。以下简述下多版本Odoo进行升级的基础配置,配置均基于我们的绿色版Odoo。

主要核心如下:

  1.  操作系统层,hosts 文件处理不同域名指向不同版本Odoo
  2.  前端层,配置好关联的 nginx.conf , 使用 upstream 区分不同域名指向不同 Odoo服务
  3.  Odoo层。各自隔离的Odoo配置,并行启动。
  4.  Python环境层。各自隔离的虚拟环境runtime配置,确保配套Odoo19~Odoo10版本正常
  5.  数据库层。使用最新版本Odoo19支持的Postgresql 版本即可,可适用于Odoo各版本



2.1,操作系统 host 文件,不同域名代表不同版本Odoo


配置好windows的 host 文件,通过域名快速分辨和管理多个版本Odoo实例,如 http://localhost.a91 可访问第一个odoo19实例, http://localhost.a81 代表第一个odoo18实例。 故此 我们可以通过访问  localhost.a91, localhost.a92, localhost.a81 等快速访问不同版本不同实例。

C:\Windows\System32\drivers\etc\host

127.0.0.1 localhost.a61
127.0.0.1 localhost.a81
127.0.0.1 localhost.a91
127.0.0.1 localhost.19


2.2, 前端nginx.conf 配置, upstream 区分不同域名

Nginx作为Odoo前端,不管生产还是开发都是必不可少的,一方面处理多版本Odoo路由,同时也是Odoo主动推送和高效访问的核心。我们使用 upstream 来区分不同域名指向不同 Odoo服务,具体 nginx.conf 请参考本站 Odoo19手册

以下对关键点简述下。

nginx.conf

http {
# 端口路由映射
include odoo_upstream.conf;

# 默认主 localhost,按映射处理
server {
listen 80 default;
proxy_cache off;

location /{
proxy_pass http://$oserver;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass_header Set-Cookie;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 3000;
}
location /websocket{
proxy_pass http://$lserver;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass_header Set-Cookie;
proxy_connect_timeout 60;
proxy_send_timeout 60;
proxy_read_timeout 3000;
}
}
}


odoo_upstream.conf

# 第一个实例19
upstream o19server1 {
server 127.0.0.1:8019;
}
upstream l19server1 {
server 127.0.0.1:8082;
}
# 第一个实例18
upstream o18server1 {
server 127.0.0.1:8018;
}
upstream l18server1 {
server 127.0.0.1:8072;
}
# 第二个实例18
upstream o18server2{
server 127.0.0.1:8028;
}
upstream l18server2{
server 127.0.0.1:8082;
}

# 根据变量(host 主机)选择 upstream
map $host $oserver {
default o19server1;
localhost.a91 o19server1;
localhost.a81 o18server1;
localhost.a82 o18server1;
}

map $host $lserver {
default l19server1;
localhost.a91 l19server1;
localhost.a81 l18server1;
localhost.a82 l18server1;
}


2.3, 配置Odoo.conf,通过不同端口启用不同版本

常规的odoo.conf配置项请参考 odoo手册,不同版本基本相同,如 Odoo19系统配置与安全 。由于要多版本并存,故我们一般会不同版本分配独立不同的端口号:

Odoo19: 8019

Odoo18: 8018

同时注意要启用 nginx 作为反向代理,比如 odoo19.conf 如下:

proxy_mode = True
http_port = 8019
xmlrpc_port = 8019
gevent_port = 8072


2.4, Python环境层

不同版本的Odoo,其Python环境是不同的,可以自行参考本端Odoo官方手册,虚拟化好不同的Python环境。

我们免费提供的 Odoo绿色版 均内置了全套对应的Python及关联的运营环境,如中文打印等,故可以直接使用。


2.5, 数据库层,使用最新PG

数据库使用一个PG即可,比如我们使用最新的Odoo19官方推荐版本 PG16。在升级过程中,我们全程使用 PostgreSQL 16,均正常运行。

如果您只是要运行Odoo,不做多版本升级,只需使用我们绿色版中内置的对应版本数据库即可。执行 .\db 即可启动数据库,或者执行 .\r 即可启动数据库及Odoo。


以上,便是Odoo升级至19最新版本的基础环境准备。 

对于使用我们全套行业方案及模块的客户,我们已全面升级Odoo19,可以直接自助购买模块升级。

企业版客户使用官方升级升级服务+我司模块升级版,即可升级19。

社区版用户使用OCA加我司脚本,即可进行社区版的升级至Odoo19。

 欧度智能: Odoo成功100%
Odoo专业开发实施,原广州尚鹏
  • Odoo项目100%海内外成功交付
  • Odoo官网下载第一,服务上千企业
  • Odoo官网销量第一的中国公司
  • 钉钉、企业微信认证服务商
  • 微软中国ChatGPT服务商,Ai中心
  • 百度千帆、阿里通义千问服务商
  • 十年专注Odoo,服务智能制造
  • Odoo中文应用商店,海量模块 
以Odoo19为例,配置Vscode的Ai开发升级环境
ivan邓国华sso
2026/1/23
2026/1/23
372
评论:
0
标签
归档
登录 留下评论
一文快速掌握odoo17-16各版本的基础和高级操作