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

Odoo 14如何为account.payment模块新增字段及报错排查

问题根源

报错核心原因是Python代码中错误定义了_inherit属性:

  • 你连续写了两次_inherit赋值,后面的_inherit = 'dte_school'会直接覆盖前面的_inherit = 'account.payment',导致你定义的AccountPayment类并没有扩展account.payment模型,自然account.payment模型中不存在term_number字段,视图加载时就会触发字段不存在的验证错误。
  • 如果你没有特殊的多继承需求,给account.payment加关联dte_school的字段,完全不需要继承dte_school模型,直接在继承account.payment的类中定义字段即可。

修正方案

1. 修正Python代码

将你的Python代码替换为以下内容:

from odoo import api, fields, models, _

class AccountPayment(models.Model):
    _inherit = 'account.payment'
    
    term_number = fields.Many2one('dte_school', string='学期编号')

提示:如果你的dte_school是抽象模型,确实需要多继承,就把_inherit写为列表格式:_inherit = ['account.payment', 'dte_school'],不要分开写两次_inherit赋值。

2. 检查必要配置

  • 确认你写这段Python代码的文件,已经在模块根目录的__init__.py中导入,比如你的代码写在models/account_payment.py里,那模块根目录的__init__.py需要有from . import models,同时models目录下的__init__.py要有from . import account_payment
  • 重启Odoo服务
  • 升级你的自定义模块doc_dte_school

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 20:36:03