瞬态和抽象模型

来自Odoo大V社-odoo中文开发手册
7017511讨论 | 贡献2017年5月4日 (四) 05:46的版本

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

在前面的代码和绝大多数Odoo模型中,类都是基于models.Model类的。 这种类型的模型具有永久的数据库持久性:为它们创建数据库表,并且它们的记录被存储,直到被显式删除。 此外,Odoo还提供了另外两种模型类型:瞬态模型和抽象模型。

  • 瞬态模型基于models.TransientModel类,用于向导式的用户交互。 它们的数据仍然存储在数据库中,但期望是临时的。 一个清理作业定期从这些表中清除旧数据。 例如,从设置|翻译菜单打开的加载语言对话框窗口,它使用瞬态模型来存储用户选择和实现向导逻辑。
  • 抽象模型基于models.AbstractModel类,并且它不存储数据。 抽象模型作为可重用的功能集,利用Odoo的继承功能,混入到其他模型。 例如,mail.thread是一个抽象模型,由讨论插件提供,用于向其他模型添加消息和追踪关注功能。
上一节:模型和Python类
下一节:检查现有模型