【问题标题】:How can I update a module with a custom field? In Odoo 9如何使用自定义字段更新模块?在 Odoo 9
【发布时间】:2018-12-17 10:18:21
【问题描述】:

我想在模型中添加一个新字段。我在 python 文件中创建它,然后我将在视图表单中显示它:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
  <record id="view_order_form_extend" model="ir.ui.view">
  <field name="name">view.order.form.extend</field>
  <field name="model">sale.order</field>
  <field name="inherit_id" ref="sale_stock.view_order_form_inherit_sale_stock"/>
  <field name="arch" type="xml">
  <xpath expr="//field[@name='picking_policy']" position="after">
    <field name="my_new_field"/>
  </xpath>
  </field>
</record>
</data>
</openerp>

当我第一次安装模块时,该字段出现并且一切正常。当我尝试更新模块时出现问题。

它给出了一个异常,指出字段 product_tmpl_id 不存在。

这怎么可能?第一次安装运行良好...

注意:如果我卸载模块,然后重新安装,它可以正常工作。但是,当我尝试更新时,它再次显示错误...

【问题讨论】:

  • 我在form you are inheriting 上看不到该字段。确保您继承了该字段出现的表单
  • @ChesuCR 我已经使用正确的 inherit_id 编辑了原始帖子。

标签: inheritance odoo odoo-9


【解决方案1】:

关于 xpath 只需简单地使用字段标签。

例如,

<field name="picking_policy" position="after">
    <field name="my_new_field"/>
</field>

不过,也只需检查清单中的依赖项。不要忘记给这个答案投票并打勾。

【讨论】:

  • 我知道字段标签选项而不是 xpath,但这并不能解决问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-14
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 2022-01-23
  • 1970-01-01
相关资源
最近更新 更多