XML数据文件

来自Odoo大V社-odoo中文开发手册
95102545讨论 | 贡献2017年4月17日 (一) 13:29的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

虽然CSV文件提供了一种简单而紧凑的格式来表示数据,但XML文件更加强大,可以更好地控制加载过程。 它们的文件名不需要与要加载的模型匹配。 这是因为XML格式更加丰富,并且信息由文件中的XML元素提供。

我们已经在前面的章节中使用了XML数据文件。 用户界面组件(例如视图和菜单项)实际上是存储在系统模型中的记录。 模块中的XML文件是用于将这些记录加载到服务器中的方法。

为了展示这一点,我们将向todo_user模块data / todo_data.xml添加第二个数据文件,其中包含以下内容:

<?xml version="1.0"?> 
<odoo>   
  <record model="todo.task" id="todo_task_c">   
    <field name="name">Reinstall Odoo</field> 
    <field name="user_id" ref="base.user_root" />  
    <field name="date_deadline">2015-01-30</field> 
    <field name="is_done" eval="False" />   
  </record> 
</odoo>

此XML等同于我们刚才在上一节中看到的CSV数据文件。

XML数据文件有一个<odoo> top元素,其中我们可以有多个对应于CSV数据行的<record>元素。

备注

在版本9.0中引入了数据文件中的<odoo> top元素,并替换了以前的<openerp>标记。 top元素中的部分仍然受支持,但现在它是可选的。 事实上,现在<odoo>和<data>是等效的,因此我们可以使用一个作为顶部元素用于我们的XML数据文件。

一个<record>元素有两个强制属性,即model和id(记录的外部标识符),并且每个字段包含一个<field>标签。

请注意,字段名称中的斜杠符号在此处不可用; 我们不能使用<field name =“user_id / id”>。 相反,ref特殊属性用于引用外部标识符。 我们将在稍后讨论关系到许多字段的值。

上一节:演示数据
下一节:数据的noupdate属性