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



我想安装安装程序,我想知道它是否可能?以及如何进行?在互联网上搜索时,我看到本教程很好地呈现了。但是,我看不出如何将表格正确填充到模块中。

你会帮我吗?

谢谢

实际上,您应该查看该主题的开发人员的官方Odoo文档。但是您的消息来源和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 的记录时,或者如果您使用noupdate="1"为 FALSE 的data节点,该字段将设置为 TRUE。

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

最新更新