news 2026/4/23 12:42:26

如何在 Odoo 19 中加载演示数据

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何在 Odoo 19 中加载演示数据

如何在 Odoo 19 中加载演示数据

随着 Odoo 的不断发展,最新版本 Odoo 19 引入了新功能,使 ERP 实施过程更顺畅、功能更强大。对于开发自定义模块的开发者和集成商而言,加载演示数据是关键步骤 —— 它能为模块功能提供真实的测试环境、培训场景和展示效果。演示数据可在填充真实数据前让应用呈现 “真实运行” 的状态,这在开发过程和客户演示中极具价值。

本文将介绍在 Odoo 19 中加载演示数据的两种常用方法:通过 XML 文件和 CSV 文件。我们将逐步讲解如何创建这两种类型的演示数据、将其与模块关联,以及在 Odoo 19 中验证实施效果。

为什么需要使用演示数据?

演示数据在 ERP 开发中扮演重要角色,主要体现在:

  • 测试记录:在部署前验证模块功能是否正常;
  • 培训资源:帮助终端用户通过示例数据理解模块用法;
  • 功能展示:在演示或客户汇报中直观呈现模块特性。

方法一:通过 XML 文件加载演示数据

XML 文件适合定义结构化的演示数据,尤其适用于复杂记录。以下是具体步骤:

步骤 1:创建 demo 文件夹

在模块目录中,创建一个名为demo的文件夹,用于存储所有包含演示数据的 XML 文件。

步骤 2:创建含演示数据的 XML 文件

demo文件夹中创建 XML 文件,示例命名为students.xml。以下代码定义了student.info模型(人力资源部门模型)的一条示例记录:

<?xml version="1.0" encoding="utf-8"?><odoo><datanoupdate="1"><!-- 1. 创建演示部门(若系统无默认部门,用于关联 student.info 的 department_id) --><recordid="demo_department_it"model="hr.department"><fieldname="name">信息技术部</field><!-- 部门名称 --><fieldname="color"eval="1"/><!-- 颜色标识(1=蓝色,视觉区分) --></record><!-- 2. 定义“上级学生”(父记录):用于演示自关联的 parent_id --><recordid="demo_student_parent"model="student.info"><fieldname="name">张三</field><!-- 姓名(必填字段) --><fieldname="age"eval="22.0"/><!-- 年龄(Float 类型,保留小数) --><fieldname="date_of_birth">2002-05-15</field><!-- 出生日期(Date 类型,格式 YYYY-MM-DD) --><!-- 关联部门:引用上方创建的“信息技术部”,若用系统默认部门可改为 ref="hr.department_management" --><fieldname="department_id"ref="demo_department_it"/><!-- parent_id 留空:此学生为“顶层上级”,无上级学生 --><fieldname="parent_id"eval="False"/></record><!-- 3. 定义“下级学生 1”(子记录):parent_id 关联上方的“张三” --><recordid="demo_student_child1"model="student.info"><fieldname="name">李四</field><fieldname="age"eval="20.0"/><fieldname="date_of_birth">2004-03-20</field><fieldname="department_id"ref="demo_department_it"/><!-- 同属信息技术部 --><fieldname="parent_id"ref="demo_student_parent"/><!-- 上级学生:引用“张三”的 ID --></record><!-- 4. 定义“下级学生 2”(子记录):parent_id 同样关联“张三” --><recordid="demo_student_child2"model="student.info"><fieldname="name">王五</field><fieldname="age"eval="19.5"/><fieldname="date_of_birth">2005-09-01</field><fieldname="department_id"ref="demo_department_it"/><!-- 同属信息技术部 --><fieldname="parent_id"ref="demo_student_parent"/><!-- 上级学生:引用“张三”的 ID --></record></data></odoo>
代码说明:
  • record_id:记录的唯一标识符(自定义,需确保模块内唯一);
  • model:指定关联的 Odoo 模型(此处为student.info,即学生信息模型);
  • field:定义模型字段值,如name(部门名称)、age(年龄标识,eval="19.5"表示为19.5岁);
  • noupdate="1":设置该数据仅在模块初始安装时加载,后续模块更新时不会被覆盖或修改。

步骤 3:在 manifest 文件中关联 XML 文件

要让 Odoo 加载该 XML 文件,需在模块的__manifest__.py文件中,将其路径添加到demo关键字下:

验证结果

安装模块后,进入 Odoo 后台的 “学生管理” 菜单,即可看到新增的演示学生 “张三,李四,王五”,表明演示数据加载成功。

方法二:通过 CSV 文件加载演示数据

对于大量简单数据,CSV 文件是更实用的选择。它能以简洁格式快速生成多条记录,尤其适合同一模型需要大量条目的场景。

步骤 1:创建 CSV 文件

在模块的data文件夹中创建 CSV 文件(示例命名为student_demo.csv),文件需包含id,name,age,date_of_birth,department_id,parent_id等字段列。

以下是 CSV 文件示例内容:

id,name,age,date_of_birth,department_id,parent_id student_zhang3,张三,21.0,2003-09-10,students_demo.demo_department_it, student_li4,李四,20.0,2004-03-25,students_demo.demo_department_it,students_demo.student_zhang3 student_wang5,王五,19.5,2005-06-18,students_demo.demo_department_it,students_demo.student_zhang3
字段说明:
  • id:每条记录的唯一标识符,需以模块名或命名空间为前缀;
  • name:学生名称;
  • age:年龄;
  • date_of_birth:生日;
  • department_id:部门;
  • parent_id:上级学生;

步骤 2:关联 CSV 文件到 manifest

将 CSV 文件路径添加到__manifest__.pydata关键字下(CSV 文件通常放在data文件夹,与 XML 演示数据的demo关键字区分):

{#...其他元数据..."data":["data/student_demo.csv",# 关联CSV演示数据文件],#...其他配置...}

验证结果

安装模块后,在对应模型的列表视图中可查看加载的演示数据。

总结

在 Odoo 19 中,通过 XML 和 CSV 文件加载演示数据是测试、展示和培训自定义模块的有效方式。遵循上述步骤,你可以为 Odoo 数据库填充相关示例数据,提升 ERP 用户体验。无论选择 XML(适合结构化数据)还是 CSV(适合简单、大量条目),演示数据都能帮助你更直观地展现模块的功能价值。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/19 22:19:58

学霸同款10个AI论文工具,助你轻松搞定本科论文!

学霸同款10个AI论文工具&#xff0c;助你轻松搞定本科论文&#xff01; AI 工具助力论文写作&#xff0c;让学术之路更轻松 在当前的学术环境中&#xff0c;越来越多的本科生开始借助 AI 工具来辅助论文写作。这些工具不仅能够帮助学生快速生成内容&#xff0c;还能有效降低 AI…

作者头像 李华
网站建设 2026/4/21 9:33:53

CRNN模型蒸馏技术:小模型保持大模型精度

CRNN模型蒸馏技术&#xff1a;小模型保持大模型精度 &#x1f4d6; 技术背景与问题提出 在当前智能文档处理、自动化办公和工业质检等场景中&#xff0c;OCR&#xff08;光学字符识别&#xff09; 已成为不可或缺的核心能力。随着深度学习的发展&#xff0c;基于端到端神经网络…

作者头像 李华
网站建设 2026/4/11 17:43:39

Llama Factory对比评测:哪家云服务最适合大模型微调?

Llama Factory对比评测&#xff1a;如何选择适合大模型微调的云服务平台&#xff1f; 对于准备长期开展大模型项目的技术团队来说&#xff0c;选择合适的云服务平台至关重要。本文将基于Llama Factory这一流行的大模型微调框架&#xff0c;从GPU型号、网络速度、存储性能和价格…

作者头像 李华
网站建设 2026/4/18 18:48:41

多模态开发者的春天:基于Llama Factory一键部署图文理解模型实战

多模态开发者的春天&#xff1a;基于Llama Factory一键部署图文理解模型实战 如果你正在为电商平台开发"以图搜商品"功能&#xff0c;却被复杂的多模态模型部署搞得焦头烂额&#xff0c;这篇文章就是为你准备的。我将分享如何利用Llama Factory这个开源框架&#xff…

作者头像 李华
网站建设 2026/4/19 10:05:02

JVM调优零基础入门:从参数解读到实战演练

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个交互式JVM调优学习应用&#xff0c;包含&#xff1a;1. 参数解释器(Xms/Xmx等鼠标悬停解释) 2. 内存分配模拟器(拖动滑块观察各代内存变化) 3. GC算法动画演示 4. 内置简单…

作者头像 李华