Openerp 字段不存在继承account.invoice时出错

Openerp 字段不存在继承account.invoice时出错,openerp,odoo-10,Openerp,Odoo 10,使用Odoo 10(从GitHub commit,branch10.0)安装我从Odoo 8移植过来的模块失败,因为在继承的帐户中找不到字段。invoice。问题是,此字段是在继承的模型中创建的,问题一直持续到能够创建一个来说明行为的点: invoice.py: 来自odoo导入字段、模型的 类别AccountInvoice(models.Model): _继承='account.invoice' a=fields.Char() invoice.xml: 账户、发票、表格 帐户、发票 形式

使用Odoo 10(从GitHub commit,branch
10.0
)安装我从Odoo 8移植过来的模块失败,因为在继承的
帐户中找不到字段。invoice
。问题是,此字段是在继承的模型中创建的,问题一直持续到能够创建一个来说明行为的点:

invoice.py

来自odoo导入字段、模型的

类别AccountInvoice(models.Model):
_继承='account.invoice'
a=fields.Char()
invoice.xml


账户、发票、表格
帐户、发票
形式
\uuuu manifest\uuuuuu.py
{'name':'Invoice bug','dependens':['account'],'data':['Invoice.xml'],'installable':True}
\uuuu init\uuuuuuuuuuu.py
只是通常的
导入发票

这样的代码失败了

ParseError: "Error while validating constraint
Field `a` does not exist
Error context:
View `account.invoice.form`
[view_id: 554, xml_id: invoice_bug.account_invoice_form_view, model: account.invoice, parent_id: 421]
None" while parsing /odoo/addons/invoice_bug/invoice.xml:4, near
[XML follows]
以下是更多的观察结果:

  • 继承另一个模型和视图,例如
    product.template
    和视图
    product.product\u template\u only\u form\u view
    (使用
    )可以正常工作
  • 使用
    而不是
    字段position=“after”
    不会影响错误
  • 其他模块,如本机的
    销售
    模块,成功地扩展了
    帐户.发票
    和相同的视图(
    帐户.发票表单
    ):
  • A
  • Odoo论坛成员似乎使用了Odoo 8或9(提供的示例会导致相同的错误,前提是您将现在删除的对
    period\u id
    的引用替换为
    date
  • 无论安装的模块或存储的记录如何(在干净的DB+3其他安装上测试),错误都会触发

是我的代码错了,还是有解决办法?

一切都很好,该字段应该添加到您的模型中。 对你的问题的一个解释是奥多没有达到你的代码

您的项目中只有一个init文件,还是正在使用多文件夹项目。请检查缩进。

尝试更改标记

<openerp>..</openerp> to <odoo>..</odoo>
。到。。

来源字段在账户.发票账户.发票.行模型中可用

如果您签入表单视图发票表单,则我们将获得2倍的原始字段

  • 发票行ID行内树视图

  • 其他信息页面

  • 如果我们在之后写入字段位置,那么系统将在发票行ID行内树状视图中找到第一个字段,由于这个原因,我们将得到错误

    但奥多给出了错误的错误信息

    您需要遵循下面的xpath

    
    

    这可能会对您有所帮助。

    这个示例是一个很小的示例,只包含我提到的文件。此外,自从添加debug
    print()之后,Python代码就可以使用了
    调用stdout上的输出文本。当您在开发人员模式下检查字段时,它也不在那里。您是否检查了数据库字段a是否添加到表account\u invoice?无效。错误与标记无关