大多数Odoo 模块的定义,如用户界面和权限规则,实际是存储在对应数据表中的数据记录。模块中的 XML 和 CSV 文件不是 Odoo 应用运行时使用,而是将这些定义加载到数据表的手段。正是因为这个原因,Odoo 模块的一个重要部分是在文件中放入数据以便插件安装时将其加入数据库。此外,掌握Odoo的数据展现的格式对于在项目实施时导入、导出业务数据也很重要……继续阅读 » Alan 3年前 (2022-05-20) 3729浏览 0评论11个赞
Odoo 的一项强大之处是无需直接修改所扩展模块的代码即可添加功能。这都归功于与自身代码组件相独立的功能继承。对模块的扩展可通过继承机制实现,以已有对象的修改层的形式。这些修改可以发生在每个层面,包括模型、视图和业务逻辑层面。我们不是直接修改原有模块,而是新建一个模块,采用所要做的修改在已有模块上新增一层。上一章讲解了如何从零开始创建应用。本章中我们将学习……继续阅读 » Alan 3年前 (2022-05-14) 4307浏览 1评论8个赞
Odoo 开发通常都需要创建自己的插件模块。本文中我们通过创建首个Odoo应用,学习在 Odoo 中显示、安装应用的步骤。我们将从开发工作流的基础学起,即创建、安装新模块,然后升级开发迭代中更新的代码。Odoo 采用类 MVC(Model-View-Controller)的架构,我们会深入到各层来实现一个图书应用。本文主要包含以下内容:图书项目总览……继续阅读 » Alan 3年前 (2022-05-06) 7591浏览 3评论8个赞
Redis 使用一个哈希表来保存所有键值对,这个哈希表,其实就是一个数组,数组的每个元素称为一个哈希桶。哈希桶中的元素保存的并不是值本身,而是指向具体值的指针。集合类型的底层数据结构主要有 5 种:整数数组、双向链表、哈希表、压缩列表和跳表。Redis 单线程是指它对网络 IO 和数据读写的操作采用了一个线程,而采用单线程的一个核……继续阅读 » Alan 3年前 (2022-04-29) 1270浏览 0评论0个赞
创始人:Brendan Eich0.1+0.2==0.3或0.1+0.2===0.3均返回 false,原因自然是浮点运算的精度问题。那么如何进行判断呢?可以使用Math.abs(0.1 + 0.2 - 0.3) <= Number.EPSILON(但0.1+0.3===0.4返回的是true 哦)1/0===Infinity、1/-0===……继续阅读 » Alan 3年前 (2022-04-26) 1501浏览 0评论0个赞
在更深入学习 Odoo 开发之前,我们需要配置好开发环境并学习相关的基础管理任务。本章中,我们将学习如何配置构建 Odoo 应用所需的环境。我们会配置一个Ubuntu 系统来托管开发服务端实例。可以使用云服务器、本地服务器或者Windows 10上的子系统。学习完本章后,读者可以掌握如何准备开发环境、通过源码运行Odoo以及在同一台机器上拥有多个Odoo……继续阅读 » Alan 3年前 (2022-02-27) 9227浏览 5评论16个赞
Odoo提供了一个快速应用开发框架,尤其适合构建商业应用。这类应用通常用于保存业务记录和工作流。Odoo 不仅简化了这类应用的构建,还提供了看板、日历、图表等视图的丰富组件,用于创建难以抗拒的用户界面。本章我们直接进入实操,通过web 界面进行编码一探Odoo 的内部,这甚至都不需要配置本地开发环境。这样会让我们直观地感受 Odoo 应用所涉及到的组件。同……继续阅读 » Alan 3年前 (2022-02-24) 8451浏览 4评论24个赞
Odoo 是一个构建应用的全功能开源平台。基于这一内核框架,构建了一整套集成应用,涉及的业务领域由 CRM 和销售至库存管理和会计。除了这些开箱即用的功能外,Odoo 在设计这套应用开始框架之初也保留了其扩展性。扩展和修改可以模块的形式实现,通过模块可修改其它模块的功能。这样避免了编辑原有的功能代码,让自定义应用可保持简洁且易于控制。可将几个模块拼接在一……继续阅读 » Alan 3年前 (2022-02-24) 11676浏览 5评论22个赞
在前面的文章中,我们在实操中见过一些Liquid标签,比如流程控制标签。本文中我们将学习更多可用于动态修改页面内容的标签。我们会学习创建变量标签及主题标签,以及最佳使用方式。通过学习各种类型的迭代标签和参数,我们可以反复执行一些代码块,这有助于编写更高质量的代码。最后我们会讲解一下已淘汰的标签,在一些较老的主题依然存在,因此了解它们的作用及使用方式很有必要……继续阅读 » Alan 3年前 (2022-02-20) 3786浏览 0评论0个赞
在写出Python之前,Python是ABC编程语言的贡献者,这是一个为初学者设计编程环境持续了10年的研究项目。ABC引入大量现在称为Pythonic的概念:对不同类型序列的通用操作、内置元组和映射类型,缩进的代码结构、无变量声明的强类型等等。Python如此友好不是一蹴而就的。Python继承了ABC中的序列统一处理。字符串、列表、字节序列、数组、XM……继续阅读 » Alan 3年前 (2022-02-05) 4001浏览 2评论0个赞