Odoo 10-在安装自定义模块时自动从模型安装数据

时间:2018-09-06 07:13:44

标签: python xml odoo

我想安装我想知道是否可以的安装程序?以及如何进行?在互联网上搜索时,我发现this tutorial的介绍很好。但是,我看不到如何将表格正确填充到模块中。

你会帮助我吗?

谢谢

1 个答案:

答案 0 :(得分:0)

实际上,您应该查看official Odoo documentation for developers中的该主题。但是您的消息来源和Odoo的文档也缺少一些非常有趣的东西。

您可以将record放入data节点中。在较旧的版本中,这是必需的,但在较新的版本中则不需要。 data块可以具有一个额外的属性noupdate,它将控制对该块中该数据的更新。

这里有个例子:

<odoo>
    <data noupdate="1">
        <record id="my_group_1" model="res.groups">
            <field name="name">My Group 1</field>
        </record>
    </data>
    <data noupdate="0">
        <record id="my_group_2" model="res.groups">
            <field name="name">My Group 2</field>
        </record>
    </data>
</odoo>

这将在Odoo中创建两个名为“我的组1”和“我的组2”的新组。如果您将两个名称都分别更改为“您的组1”和“您的组2”并再次更新模块/应用程序,则仅第二个组的名称将被更改回“我的组2”。

Odoo如何做到这一点?对于您通过xml或csv创建的每条记录,都会创建一个外部ID。该外部ID本身也具有Odoo模型。它是模型ir.model.data,其条目/记录可在设置/技术下找到(在较新版本中激活调试模式即可查看)。该模型具有字段update,在创建xml或csv记录时将其默认设置为TRUE,或者如果您将data节点与noupdate="1"一起使用,则设置为FALSE。 / p>

最后一个提示:如果使用noupdate选项删除记录,则将在模块更新时重新创建它们,因为您还将删除ir.model.data(外部ID)。