Odoo 服务器端带有外部 API,可供网页客户端和其它客户端应用使用.本文中我们将学习如何在我们的客户端程序中使用 Odoo 的外部 API.为避免引入大家所不熟悉的编程语言,此处我们将使用基于 Python 的客户端,但这种 RPC 调用的处理方法也适用于其它编程语言. 我们将一起了解如何使用 Odoo RPC调用,然后根据所学知识使用 Python创建一个简单的图书命令行应用. 本文主要内容有: 在客户端机器上安装 Python 使用XML-RPC连接 Odoo 使用XML-RPC运行服务…
Odoo服务器提供一个外部API,该API由其web客户端使用,也可以被支持XML-RPC或 JSON-RPC协议的编程语言(例如:Python.PHP.Ruby和Java)使用. 使用XML-RPC调用Odoo API 访问服务器最简单的方法时使用XML-RPC,可以使用Python标准库中的xmlrpclib库.注意:调用Odoo API,当然就需要一个Odoo服务器实例供我们链接.这个Odoo服务器实例可以运行在本机上(localhost),也已运行在另一台机器上,那就需要使用可访问的IP…
在前面的文章中,我们学习了模型层.如何创建应用数据结构以及如何使用 ORM API 来存储查看数据.本文中我们将利用前面所学的模型和记录集知识实现应用中常用的业务逻辑模式. 本文的主要内容有: 以文件为中心工作流的阶段(stage) ORM 方法装饰器:@api.multi, @api.one和@api.model onchange方法,与用户即时交互 使用 ORM 内置方法,如create, write 和 unlink Mail 插件提供的消息和活动功能 创建向导来帮助用户执行复杂操作 使用…
Odoo 起初是一个后台系统,但很快就有了前端界面的需求.早期基于后台界面的门户界面不够灵活并且对移动端不友好.为解决这一问题,Odoo 引入了新的网站功能,为系统添加了 CMS(Content Management System)内容管理系统.这使得我们无需集成第三方 CMS 便可创建美观又高效的前端.本文中我们将学习如何利用 Odoo 自带的网站功能开发面向前端的插件模块. 本文主要内容有: 学习项目 – 自助图书馆 第一个网页 创建网站 开发准备 我将用第十一章 Odoo 12开发之看板视…
在前面的文章中,我们学习了模型层.如何创建应用数据结构以及如何使用 ORM API 来存储查看数据.本文中我们将利用前面所学的模型和记录集知识实现应用中常用的业务逻辑模式. 本文的主要内容有: 以文件为中心工作流的阶段(stage) ORM 方法装饰器:@api.multi, @api.one和@api.model onchange方法,与用户即时交互 使用 ORM 内置方法,如create, write 和 unlink Mail 插件提供的消息和活动功能 创建向导来帮助用户执行复杂操作 使用…
在本系列文章第三篇Odoo 12 开发之创建第一个 Odoo 应用中,我们概览了创建 Odoo 应用所需的所有组件.本文及接下来的一篇我们将深入到组成应用的每一层:模型层.视图层和业务逻辑层. 本文中我们将深入学习模型层,以及学习如何使用模型来设计应用所需的数据结构.我们会探索模型和字段的各项作用,包括定义模型关系.添加计算字段.创建数据约束. 本文的主要内容有: 学习项目 – 优化图书馆应用 创建模型 创建字段 模型间的关系 计算字段 模型约束 了解 Odoo的 base 模型 开发准备 本文…
大多数Odoo 模块的定义,如用户界面和安全规则,实际是存储在对应数据表中的数据记录.模块中的 XML 和 CSV 文件不是 Odoo 应用运行时使用,而是载入数据表的手段.正是因为这个原因,Odoo 模块的一个重要部分是在文件中放入数据以在插件安装时将其载入数据库. 模块可以包含初始数据和演示数据,可通过数据文件将它们加入模块.此外,了解 Odoo 数据的格式对于在项目实施上下文中导入导出业务数据也非常重要. 本文的主要内容有: 理解外部标识符的概念 导入导出数据文件 使用 CSV 文件 添加…
Odoo 的一个强大功能是无需直接修改底层对象就可以添加功能.这是通过其继承机制来实现的,采取在已有对象之上修改层来完成.这种修改可以在不同层上进行-模型层.视图层和业务逻辑层.我们创建新的模块来做出所需修改而无需在原有模块中直接修改. 上一篇文章中我们从零开始创建了一个新应用,本文中我们学习如何通过继承已有的核心应用或第三方模块来创建新的模块.实现以上本文将主要涵盖: 原模型扩展,为已有模型添加功能 修改数据记录来继承视图,添加功能或修改数据来修改其它模块创建的数据记录 其它模型继承机制,如代…
Odoo 开发通常都需要创建自己的插件模块.本文中我们将通过创建第一个应用来一步步学习如何在 Odoo 中开启和安装这个插件.我们将从基础的开发流学起,即创建和安装新插件,然后在开发迭代中更新代码来进行升级. Odoo 采用类 MVC(Model-View-Controller)的结构,我们将深入到各层来实施一个图书应用.本文主要内容有: 创建一个新的模块,用来实施相关功能 添加应用的特性功能:顶级菜单项和安全组 添加一个一开始会失败但在项目完成时成功运行的自动化测试 实施模型层,定义应用的数据…
引言 Odoo是一个强大的商业应用开源平台.在此基础上,构建了一套紧密集成的应用程序,涵盖了从CRM到销售到股票和会计的所有业务领域.Odoo有一个动态和不断增长的社区,不断增加功能.连接器和其他商业应用. Odoo 开发要点提供了一个逐步指导Odoo开发的指南,让读者能够快速的爬上学习曲线,并在Odoo应用平台上变得富有成效. 前两章的目的是让读者熟悉Odoo,学习建立开发环境的基本技术,熟悉模块开发方法和工作流. 以下各章节详细解释了Odoo addon模块开发所需的关键开发主题,如继承和扩…