owl 开发工具简介 从 Widget 到 OWL,是 odoo 前端的重大变化,也是大势所趋。如今在再看 odoo 的 webclient,放眼望去,尽是 OWL 组件。这里介绍下 odoo 前端开发用到的两个重要工具 owl-devtools 和 owl-vision。 owl-devtools owl-devtools 是一个浏览器的扩展插件,以下给出 owl-devtools 的下载地址。下载解压后,有两个版本...
学习OWL之前,你必须要了解的DOM 什么是DOM? 不少朋友对 DOM 没啥概念,模糊的感觉 DOM 好像就是document,亦或是觉得 DOM 跟网页是一回事。如果前端开发只是工作的一小部分,深入了解与否无可厚非;但如果要深入研究前端,那么对 DOM 就必须要有精确的理解。 DOM(Document Object Model)是由 W3C(World Wide Web Consortium) 和 WHATWG(Web Hyper...
最简 owl 案例 Owl是什么? Owl 是一个用 Typescript 编写的 UI 框架,由 Odoo 官方专门为自身平台量身定做。采用了 React 和 Vue 的设计理念, Owl 的主要功能包括: 声明式组件系统( declarative component system ) 类似于 Vue 的细粒度响应式系统 hooks(钩子 ) fragments( 片段 ) 异步渲染 OWL如何使用? Odoo 不...
odoo内置的WSGI服务器 WSGI (Web Server Gateway Interface,Web 服务器网关接口)是 Python 语言中定义的一种标准接口,用于规范 Web 服务器 和 Python Web 应用程序 之间的通信。它存在的主要目的就是提供一个统一的、标准化的协议,使得任何支持 WSGI 的 Web 服务器都可以运行任何支持 WSGI 的 Python Web 应用程序,从而实现 python应用服务...
odoo国际化翻译 开发 odoo 系统模块的时候,如果一开始就有国际化的需求,无论是模型的定义还是视图的构建,建议使用英语作为第一语言:一方面,英语本身就是一种国际化的语言;另一方面,odoo内置模型字段描述如Created by和Created on都是用英文,如果我们将中文作为第一语言,就会出现原始.po语言文件中既有中文,又有英文的尴尬场景,还需要再做一次 从中文到中文 的翻译。 PO文件的导出与翻译 进入开...
odoo中的约束 constraints 在 Odoo 中,约束(Constraints)用于确保数据的完整性和一致性。Odoo 提供了两种主要的约束类型:SQL 约束和 Python 约束。下面将结合官方文档对这两种约束进行详细介绍。 SQL约束 SQL 约束是通过数据库层面的约束来确保数据的完整性。Odoo 允许开发者在模型定义中使用 _sql_constraints 属性来定义 SQL 约束,如下所示: from odoo impo...
odoo中的动作按钮(action buttons) 在 odoo 中引入动作按钮(Action Buttons)的主要目的是为了给用户提供一种直观且灵活的方式来执行特定的操作或触发特定的行为。这些按钮可以嵌入到表单视图、列表视图、看板视图等界面中,帮助用户快速完成常见的任务或导航到其他视图。比如在我们的房地产模块中,我们希望执行以下操作: 取消或将房产设置为已售 接受或拒绝用户报价 虽然可以直接更改字段状态,但这并不符合我们的的操作习惯。 动作按... V16 V17 V18
odoo中的计算字段和onchange方法 计算字段和Onchange方法是Odoo中实现动态数据更新和业务逻辑处理的两种重要技术。计算字段适用于需要动态生成数据或进行数据聚合的场景,而Onchange方法则适用于需要实时更新字段值或进行输入验证的场景。在实际开发中,开发者应根据具体需求选择合适的技术,并注意其性能和维护成本。通过合理使用计算字段和Onchange方法,可以显著提升系统的灵活性和用户体验。 计算字段与Onchange方法的对... V16 V17 V18
odoo 模块中的模型关系 odoo 自带的 ORM 框架,使得我们在开发过程中,无需首先设计数据库结构,而是通过代码来定义数据模型,然后通过 ORM 将这些代码转换成数据表、字段以及表之间的关系。 many2one/one2many/many2many 是 odoo 模型中最常见的三种关系定义。 模型关系定义 many2one:比如“多个员工属于一个部门” class Employee(models.Model): _na... V16 V17 V18
odoo 模块中的基本视图 odoo 是一个高数据库驱动的软件框架,odoo 模块中的视图也有多种类型,如form,tree/list,serach,kanban,graph,calendar 等。这些视图都以 xml 格式保存在数据库中,当用户请求的时候,再从数据库中加载并渲染为 html 页面,并呈现在用户的面前。 基本视图form,tree/list,search form record id="estate_prop... V16 V17 V18
odoo 极简增删改查 odoo 是一款非常出色的低代码平台,我们在开发中常见的一些基本操作,在 odoo 中只需要很少的代码就可以实现比较亮眼的功能。 models estate_property.py 文件代码如下: from odoo import api, fields, models class EstateProperty(models.Model): _name = "estate.property" _d... V16 V17 V18
odoo插件多版本开发 odoo 官方每年都会发布新的版本,我们在选择 odoo 平台开发产品的时候,自然会考虑到版本的适配问题。管理好自己开发的模块,以适配 odoo 的不同版本,是每一位开发者必须要做的事情。以下是我们推荐给初学者的插件开发管理模式: odoo服务安装 odoo windows安装包 postgresql windows安装包 对于初学者,推荐使用 windows 安装包,免了不必要的折腾,就可以快速... V16 V17 V18