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

更新Odoo基础模块(base、mail、web)时出现JSON解析错误

Odoo基础模块更新时JSON解析错误排查方案

问题描述

更新Odoo的base、mail、web等基础模块时,页面加载无法完成且无法正常查看错误信息;手动禁用加载界面后,捕获到以下错误:

UncaughtClientError > SyntaxError
Uncaught Error Javascript > JSON.parse: unexpected character at line 1 column 1 of the JSON data
SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
    jsonrpc/promise</<@https://erp-test-server.ta-da.ua/web/assets/2407-3bfcb27/web.assets_backend.min.js:593:55

环境说明:未修改过任何基础模块,Odoo部署在Ubuntu服务器的Docker容器中。

排查步骤及解决方案

1. 重新编译静态资源

  • 进入Docker容器,执行资产编译命令强制更新web模块资源:
    ./odoo-bin -d 你的数据库名 --load=web --update=web
    
  • 若使用Docker Compose,可重启容器时添加编译参数,确保静态资源文件生成完整。

2. 清理多层缓存

  • 浏览器端:清除当前域名的缓存、Cookie,切换至无痕模式重新访问系统。
  • Odoo服务器端:
    • 删除容器内/var/lib/odoo/sessions目录下的会话文件;
    • 登录数据库执行SQL清理视图缓存:
      DELETE FROM ir_attachment WHERE res_model='ir.ui.view' AND type='binary';
      

3. 校验容器权限与网络

  • 确保容器内/var/lib/odoo目录权限归属odoo用户:
    chown -R odoo:odoo /var/lib/odoo
    
  • 检查容器网络连通性,确认无端口映射或防火墙拦截导致的资源加载异常。

4. 查看服务器日志定位根源

  • 查看Docker容器内Odoo详细日志:
    docker logs 你的容器名称
    
  • 重点关注模块更新时的Python报错,JSON解析错误通常是后端返回了非JSON格式响应(如HTML错误页面),根据日志提示修复对应问题(如数据库表损坏可执行./odoo-bin -d 你的数据库名 --repair)。

5. 确认版本一致性

  • 检查Docker镜像的Odoo版本是否与数据库版本匹配,版本不兼容会导致模块更新时出现异常响应,需更换对应版本镜像或升级数据库。

内容的提问来源于stack exchange,提问作者Wald Sin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 18:09:25