在odoo 12中升级自定义模型时出现KeyError



当我在odoo 12中安装自定义模型(应用程序(时没有错误,我可以使用这个模型。但是,当我更改表单视图中的字段宽度时,我会收到一个KeyError,比如:

文件"C: \Bitnami\odoo-12\apps\odoo\Lib\site-packages\odoo-12.0.post20200815-py3.7.egg\odoo\modules\registry.py",getitem中的第177行返回self.models[model_name]KeyError:"qualities">

无论我在formview中更改什么,我仍然会得到相同的错误。

Python来源:

from odoo import models, fields, api, _
from odoo.tools import ustr
import math
# Setup test module-1
# Skip _name = when inherit product_template
class Calc(models.Model):
_name = 'calc'
_description = 'Module t.b.v. calculation-functions'
qualities_id = fields.Many2one(comodel_name="qualities", string="Karton kwaliteit")
qualities_dikte = fields.Float(string="Golf dikte", related='qualities_id.golfdikte', readonly=True)
qualities_ref = fields.Char(string="Reference", related='qualities_id.reference', readonly=True)

XML源(部分(:

<div>
<field name="qualities_id"    class="oe_inline" />
<field name="qualities_dikte" class="oe_inline" />
<field name="qualities_ref"   class="oe_inline" />
</div>

问题出在哪里?

此行的问题:

qualities_id = fields.Many2one(comodel_name="qualities", string="Karton kwaliteit")

当我们声明任何具有Many2one数据类型的字段时,Odoo会查找目标数据库表。在您的情况下,表名就是质量。

我们可以通过以下方式解决它:

  • 如果质量表不存在,请在没有任何质量表的情况下更改数据类型
  • 如果存在质量表,请检查.py导入文件序列,或者确保在任何其他文件或同一文件中使用质量代码之前执行该代码

相关内容

最新更新