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

Odoo继承res.partner模块报错:column res_partner.partner_type不存在

解决res.partner添加字段后数据库列不存在的问题

出现psycopg2.errors.UndefinedColumn: column res_partner.partner_type does not exist错误,核心原因是Odoo未将新定义的字段同步到PostgreSQL数据库,以下是具体解决步骤:

1. 检查模块基础配置

  • 确保Python文件已被正确导入:在模块根目录的__init__.py中添加导入语句:
    from . import res_partner
    
  • 确认__manifest__.py的依赖配置包含base模块(res.partner属于base模块):
    'depends': ['base'],
    
  • 检查__manifest__.py的语法,确保没有拼写错误或格式问题。

2. 重新同步模块与数据库

  • Odoo后台操作:找到自定义模块,点击更新(已安装)或安装(未安装),更新时确保触发数据库结构同步(部分版本需勾选"升级数据库结构"选项)。
  • 命令行强制同步(更可靠):
    ./odoo-bin -d 你的数据库名称 -u 你的模块名称 --upgrade
    
    该命令会强制Odoo将模型字段定义同步到数据库。

3. 修复视图XML语法错误

你的视图代码中存在标签语法错误:<<xpath多了一个左尖括号,正确写法为:

<xpath expr="//field[@name='vat']" position="after">
    <field name="partner_type"/>
</xpath>

语法错误会导致视图加载失败,修复后才能正常显示字段。

4. 验证字段是否创建(可选)

若以上步骤无效,可直接登录PostgreSQL数据库执行查询,确认字段是否存在:

SELECT column_name FROM information_schema.columns 
WHERE table_name='res_partner' AND column_name='partner_type';

如果无返回结果,检查Odoo运行日志,排查是否有模块加载或字段创建的报错信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 21:34:53