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

Odoo V12新增字段无法显示问题求助

解决Odoo V12中自定义字段无法在表单视图显示的问题

嗨,我来帮你排查这个问题,你遇到的核心问题是视图定义的类型错误,还有几处语法小问题,咱们一步步来修复:

1. 修正视图的模型类型

你现在用了model="ir.actions.act_window",但这个是用来定义动作窗口(比如菜单打开的窗口)的,而要继承表单视图,必须用model="ir.ui.view",同时name字段是视图的标识名称,不需要res_model。

把你的表单视图代码改成这样:

<record id="production_lot_form_view_inherit" model="ir.ui.view">
    <field name="name">stock.production.lot.form.inherit.my</field>
    <field name="model">stock.production.lot</field>
    <field name="inherit_id" ref="stock.view_production_lot_form" />
    <field name="priority">10</field>
    <field name="arch" type="xml">
        <xpath expr="//group/field[@name='product_id']" position="after">
            <field name="newfield"/>
        </xpath>
    </field>
</record>

这里注意:

  • 把model改成ir.ui.view,这才是视图继承对应的模型
  • 修正了newfield标签的闭合(你之前少了/>里的右括号,这会导致XML解析失败)
  • 给视图ID和name起了更清晰的名字,避免和系统视图冲突

2. 修复模型继承的语法错误

你模型里的继承写法用了三个单引号:_inherit = '''stock.production.lot''',虽然Python语法允许,但Odoo开发里通常用标准的单/双引号写法,改成这样更稳妥:

class ProductionLot(models.Model):
    _inherit = 'stock.production.lot'
    newfield = fields.Char(string='New field', store=False)

3. 重新安装模块验证

做完上面的修改后,先卸载模块再重新安装(或者直接升级模块),然后打开库存批次的表单视图,就能看到新增的newfield字段了。

额外说明

之前你用ir.ui.view报错,大概率是因为当时XML标签未闭合或者语法错误,现在修正后就不会有问题了。另外你的manifest配置没问题,依赖的stock和product模块已经正确声明。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 09:05:27