第四章 Odoo 15开发之模块继承
Odoo 的一项强大之处是无需直接修改所扩展模块的代码即可添加功能。这都归功于与自身代码组件相独立的功能继承。对模块的扩展可通过继承机制实现,以已有对象的修改层的形式。这些修改可以发生在每个层面,包括模型、视图和业务逻辑层面。我们不是直接修改原有模块,而是新建一个模块,采用所要做的修改在已有模块上新增一层。上一章讲解了如何从零开始创建应用。本章中我们将学习……
Odoo 的一项强大之处是无需直接修改所扩展模块的代码即可添加功能。这都归功于与自身代码组件相独立的功能继承。对模块的扩展可通过继承机制实现,以已有对象的修改层的形式。这些修改可以发生在每个层面,包括模型、视图和业务逻辑层面。我们不是直接修改原有模块,而是新建一个模块,采用所要做的修改在已有模块上新增一层。上一章讲解了如何从零开始创建应用。本章中我们将学习……
Odoo 开发通常都需要创建自己的插件模块。本文中我们通过创建首个Odoo应用,学习在 Odoo 中显示、安装应用的步骤。我们将从开发工作流的基础学起,即创建、安装新模块,然后升级开发迭代中更新的代码。Odoo 采用类 MVC(Model-View-Controller)的架构,我们会深入到各层来实现一个图书应用。本文主要包含以下内容:图书项目总览……
Redis 使用一个哈希表来保存所有键值对,这个哈希表,其实就是一个数组,数组的每个元素称为一个哈希桶。哈希桶中的元素保存的并不是值本身,而是指向具体值的指针。集合类型的底层数据结构主要有 5 种:整数数组、双向链表、哈希表、压缩列表和跳表。Redis 单线程是指它对网络 IO 和数据读写的操作采用了一个线程,而采用单线程的一个核……
创始人: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===……
在更深入学习 Odoo 开发之前,我们需要配置好开发环境并学习相关的基础管理任务。本章中,我们将学习如何配置构建 Odoo 应用所需的环境。我们会配置一个Ubuntu 系统来托管开发服务端实例。可以使用云服务器、本地服务器或者Windows 10上的子系统。学习完本章后,读者可以掌握如何准备开发环境、通过源码运行Odoo以及在同一台机器上拥有多个Odoo……
Odoo提供了一个快速应用开发框架,尤其适合构建商业应用。这类应用通常用于保存业务记录和工作流。Odoo 不仅简化了这类应用的构建,还提供了看板、日历、图表等视图的丰富组件,用于创建难以抗拒的用户界面。本章我们直接进入实操,通过web 界面进行编码一探Odoo 的内部,这甚至都不需要配置本地开发环境。这样会让我们直观地感受 Odoo 应用所涉及到的组件。同……
Odoo 是一个构建应用的全功能开源平台。基于这一内核框架,构建了一整套集成应用,涉及的业务领域由 CRM 和销售至库存管理和会计。除了这些开箱即用的功能外,Odoo 在设计这套应用开始框架之初也保留了其扩展性。扩展和修改可以模块的形式实现,通过模块可修改其它模块的功能。这样避免了编辑原有的功能代码,让自定义应用可保持简洁且易于控制。可将几个模块拼接在一……
在前面的文章中,我们在实操中见过一些Liquid标签,比如流程控制标签。本文中我们将学习更多可用于动态修改页面内容的标签。我们会学习创建变量标签及主题标签,以及最佳使用方式。通过学习各种类型的迭代标签和参数,我们可以反复执行一些代码块,这有助于编写更高质量的代码。最后我们会讲解一下已淘汰的标签,在一些较老的主题依然存在,因此了解它们的作用及使用方式很有必要……
在写出Python之前,Python是ABC编程语言的贡献者,这是一个为初学者设计编程环境持续了10年的研究项目。ABC引入大量现在称为Pythonic的概念:对不同类型序列的通用操作、内置元组和映射类型,缩进的代码结构、无变量声明的强类型等等。Python如此友好不是一蹴而就的。Python继承了ABC中的序列统一处理。字符串、列表、字节序列、数组、XM……
安装多版本的 Go:https://golang.org/doc/manage-install编译原理基础编译与反编译⼯具使⽤调试⼯具语法实现分析Parser 应⽤场景示例函数调⽤规约编译原理基础编译过程词法分析(Lexical Analysis)语法分析(Syntax Analysis)https://astexplo……
本文我们学习Liquid的基础知识,主要包含如下内容:Liquid是什么?学习Liquid及其定界符学习比较运算符使用逻辑运算符数据类型对空白的控制学习完本文,读者将会对Liquid的逻辑有更深的了解,也能 GET 到操作各种类型数据的运算符以及Liquid删除烦人的空白字符的方法等知识。通过学习如何使用逻辑运算符以及操作句柄属性,我们能学……
理解可执行文件Go 进程的启动与初始化调度组件与调度循环处理阻塞调度器的发展历史与调度有关的常⻅问题暖场内容跨语⾔学习PHP 转 GoPHP-FPM 是多进程模型,FPM 内单线程执⾏。PHP 底层是 C 语⾔实现,整套系统难精通。⽐如我遇到过 PHP 底层的 bug,束⼿⽆策。Go 从⽤户代码⼀直到底层都是 Go(会有⼀些汇编),……
龟叔(Guido)对语言设计美学的理解非常厉害。我见过很多语言设计者,他们可以写出理论上很美的编程语言,但使用者寥寥,而龟叔是那类奇人,他们创建的语言在理论上不那么美,但人们很乐意使用它来编程。-Jim Hugunin,Jython作者、AspectJ联合作者、.Net DLR架构师Python最好的一点是其一致性。在使用了一段时间Python后,你就会……
互联网自诞生之日,人们就发现了其便捷之处,信息尽在指间。此后,人们就倾力创建各种互联网应用和综合服务,来方便我们的生活,这其中自然少不了电商网站,其间便诞生了Shopify。俗话说“合久必分、分久必合”,跨境电商领域平台和独立站也存在这样的“拉锯战”。平台有ebay、亚马逊、Wish、Lazada 等,而独立站有 WordPress、Magento、Pre……
今年10月TIOBE榜Python首次排名第一, 而据“香农计划”(“Shannon Plan”) Python 在明年(3.11 )将提速1倍,总目标是4年提速5倍,所以入坑 Python 的前景还是很好的。龟叔一把年纪了还这么拼,我们没有理由躺平。 Python在编程语言中的入门门槛较低,应用也非常广泛,这得益于其涉及领域众多的安装包,使用某些安装包甚至……
在1966年,Seymour Papert和Wally Feurzig发明了一种专门给儿童学习编程的语言——LOGO语言,它的特色就是通过编程指挥一个小海龟(turtle)在屏幕上绘图。海龟绘图(Turtle Graphics)后来被移植到各种高级语言中,Python内置了turtle库,基本上100%复制了原始的Turtle Graphics的所有功能。……
2021年12月7日,Django 团队正式发布了 Django 4.0。主要新增功能有:新增RedisCache后台缓存提供对 Redis 缓存的内置支持。为减化对Forms, Formsets和ErrorList的自定义,现在可通过模板引擎对它们进行渲染。Python标准库中的zoneinfo成为当前 Django 中对时区的默认实现。安……
Go 语言至少在国内的范围看已经走出了“小众”语言的范畴,从各个教学平台推出的课程数量也可以有所洞见,更不用说其云原生的地位以及大厂们都纷纷将其作为主力开发语言这一事实。老许(许式伟)作为Go语言布道师江湖地位自然是毋庸置疑的(这次 Go 圈各路大佬也都有协助造势,听闻 go-zero 的作者万俊峰也已被挖到了 Go+团队),但Go+作为一门新的语言(是……
无意间发现和 Unreal 和 Unity同类讨论较多的游戏引擎中还有一个 Godot,这一个真正意义上的开源引擎,之所以这么说,是因其开放程度很高,当前也不存在任何抽佣的限制。Godot引擎官方说这是一个打包了完整功能、可通过统一界面开发2D 和3D 游戏的跨平台引擎。相较于动辄很多个 G 的 Unreal 和 Unity,Godot 可说得上是非常轻量级……
WebRTC 整体架构图:技术进展WebRTC API接口本书示例代码配套视频flutter-webrtcWebRTC通话流程基本步骤:SDP是一个描述多媒体连接内容的协议,例如分辨率、格式、编码、加密算法等,示例: //版本v=0//<username> <sess-id&……
您已发表174条评论。
日期时间 | Points | 类别 | 状态 | 描述 |
---|---|---|---|---|
2019-01-30 14:15:08 | 0 | accepted | comment_posted_203961 | |
2019-02-09 11:16:00 | 0 | accepted | comment_posted_203977 | |
2019-02-09 11:17:58 | 0 | accepted | comment_posted_203978 | |
2019-02-10 04:13:49 | 0 | accepted | comment_posted_203981 | |
2019-02-10 07:42:20 | 0 | accepted | comment_posted_203983 | |
2019-02-11 08:01:50 | 1 | 充值 | accepted | comment_approved_203983 |
2019-02-14 01:36:17 | 0 | 充值 | accepted | comment_posted_204011 |
2019-02-15 13:41:31 | 0 | 充值 | accepted | comment_posted_204017 |
2019-02-18 04:10:47 | 0 | 充值 | accepted | comment_posted_204028 |
2019-02-19 04:34:38 | 0 | 充值 | accepted | comment_posted_204031 |
2019-02-22 17:40:31 | 0 | 充值 | accepted | comment_posted_204043 |
2019-02-25 15:46:07 | 0 | 充值 | accepted | comment_posted_204053 |
2019-02-28 14:24:13 | 0 | 充值 | accepted | comment_posted_204064 |
2019-03-01 07:24:42 | 0 | 充值 | accepted | comment_posted_204067 |
2019-03-07 23:32:12 | 0 | 充值 | accepted | comment_posted_204078 |
2019-03-07 23:34:02 | 0 | 充值 | accepted | comment_posted_204079 |
2019-03-08 09:18:01 | 0 | 充值 | accepted | comment_posted_204082 |
2019-03-08 09:44:40 | 0 | 充值 | accepted | comment_posted_204083 |
2019-03-08 12:29:01 | 0 | 充值 | accepted | comment_posted_204085 |
2019-03-12 06:31:34 | 0 | 充值 | accepted | comment_posted_204092 |
2019-03-12 15:55:08 | 0 | 充值 | accepted | comment_posted_204094 |
2019-03-15 15:24:29 | 0 | 充值 | accepted | comment_posted_204104 |
2019-03-16 01:57:32 | 0 | 充值 | accepted | comment_posted_204107 |
2019-03-22 07:15:53 | 0 | 充值 | accepted | comment_posted_204124 |
2019-03-22 07:46:10 | 0 | 充值 | accepted | comment_posted_204125 |
2019-03-24 09:01:55 | 0 | 充值 | accepted | comment_posted_204129 |
2019-04-08 05:06:08 | 0 | 充值 | accepted | comment_posted_204167 |
2019-04-11 02:58:27 | 0 | 充值 | accepted | comment_posted_204174 |
2019-04-21 00:09:40 | 0 | 充值 | accepted | comment_posted_204189 |
2019-04-23 03:56:57 | 0 | 充值 | accepted | comment_posted_204201 |
2019-04-29 12:40:08 | 0 | 充值 | accepted | comment_posted_204224 |
2019-05-02 06:28:00 | 0 | 充值 | accepted | comment_posted_204231 |
2019-05-08 01:14:24 | 0 | 充值 | accepted | comment_posted_204253 |
2019-05-08 01:20:18 | 0 | 充值 | accepted | comment_posted_204254 |
2019-05-11 03:05:01 | 0 | 充值 | accepted | comment_posted_204280 |
2019-05-11 03:06:49 | 0 | 充值 | accepted | comment_posted_204281 |
2019-05-11 03:08:17 | 0 | 充值 | accepted | comment_posted_204282 |
2019-05-12 03:44:48 | 0 | 充值 | accepted | comment_posted_204287 |
2019-05-15 08:47:18 | 0 | 充值 | accepted | comment_posted_204314 |
2019-05-18 07:40:58 | 0 | 充值 | accepted | comment_posted_204340 |
2019-05-20 07:16:13 | 0 | 充值 | accepted | comment_posted_204354 |
2019-05-28 13:32:51 | 0 | 充值 | accepted | comment_posted_204389 |
2019-05-30 10:10:47 | 0 | 充值 | accepted | comment_posted_204404 |
2019-06-03 15:34:17 | 0 | 充值 | accepted | comment_posted_204447 |
2019-06-24 07:49:18 | 0 | 充值 | accepted | comment_posted_204561 |
2019-06-24 11:35:58 | 0 | 充值 | accepted | comment_posted_204564 |
2019-07-02 14:48:57 | 0 | 充值 | accepted | comment_posted_204590 |
2019-07-02 14:50:36 | 0 | 充值 | accepted | comment_posted_204591 |
2019-07-02 15:03:05 | 0 | 充值 | accepted | comment_posted_204592 |
2019-07-03 02:05:59 | 0 | 充值 | accepted | comment_posted_204594 |
2019-07-04 12:53:59 | 0 | 充值 | accepted | comment_posted_204600 |
2019-07-06 01:08:41 | 0 | 充值 | accepted | comment_posted_204607 |
2019-07-10 07:26:31 | 0 | 充值 | accepted | comment_posted_204616 |
2019-07-16 23:35:36 | 0 | 充值 | accepted | comment_posted_204629 |
2019-07-19 05:52:28 | 0 | 充值 | accepted | comment_posted_204649 |
2019-07-24 01:22:39 | 0 | 充值 | accepted | comment_posted_204690 |
2019-07-24 23:44:57 | 0 | 充值 | accepted | comment_posted_204698 |
2019-07-27 12:36:15 | 0 | 充值 | accepted | comment_posted_204722 |
2019-07-31 13:29:51 | 0 | 充值 | accepted | comment_posted_204738 |
2019-08-13 10:28:13 | 0 | 充值 | accepted | comment_posted_204792 |
2019-08-13 10:36:27 | 0 | 充值 | accepted | comment_posted_204793 |
2019-08-13 10:38:53 | 0 | 充值 | accepted | comment_posted_204794 |
2019-08-13 10:41:52 | 0 | 充值 | accepted | comment_posted_204795 |
2019-08-15 03:47:08 | 0 | 充值 | accepted | comment_posted_204801 |
2019-08-16 08:14:37 | 0 | 充值 | accepted | comment_posted_204804 |
2019-08-19 05:52:18 | 0 | 充值 | accepted | comment_posted_204814 |
2019-08-21 13:28:23 | 0 | 充值 | accepted | comment_posted_204820 |
2019-08-23 06:08:52 | 0 | 充值 | accepted | comment_posted_204827 |
2019-08-28 06:05:47 | 0 | 充值 | accepted | comment_posted_204847 |
2019-08-28 06:15:46 | 0 | 充值 | accepted | comment_posted_204848 |
2019-08-31 12:53:40 | 0 | 充值 | accepted | comment_posted_204875 |
2019-09-02 09:39:50 | 0 | 充值 | accepted | comment_posted_204878 |
2019-09-02 09:46:57 | 0 | 充值 | accepted | comment_posted_204879 |
2019-09-04 07:31:04 | 0 | 充值 | accepted | comment_posted_204888 |
2019-09-23 23:31:56 | 0 | 充值 | accepted | comment_posted_205039 |
2019-09-28 13:58:46 | 0 | 充值 | accepted | comment_posted_205065 |
2019-10-05 08:35:47 | 0 | 充值 | accepted | comment_posted_205084 |
2019-10-07 14:55:03 | 0 | 充值 | accepted | comment_posted_205090 |
2019-10-13 02:28:52 | 0 | 充值 | accepted | comment_posted_205107 |
2019-10-15 13:18:20 | 0 | 充值 | accepted | comment_posted_205115 |
2019-10-20 02:55:26 | 0 | 充值 | accepted | comment_posted_205123 |
2019-10-20 10:22:05 | 0 | 充值 | accepted | comment_posted_205125 |
2019-10-23 01:57:19 | 0 | 充值 | accepted | comment_posted_205128 |
2019-10-24 10:09:09 | 0 | 充值 | accepted | comment_posted_205141 |
2019-10-24 10:11:02 | 0 | 充值 | accepted | comment_posted_205142 |
2019-10-25 10:55:47 | 0 | 充值 | accepted | comment_posted_205146 |
2019-10-27 09:46:44 | 0 | 充值 | accepted | comment_posted_205156 |
2019-11-27 23:27:40 | 0 | 充值 | accepted | comment_posted_205285 |
2019-11-28 02:12:43 | 0 | 充值 | accepted | comment_posted_205288 |
2019-11-28 03:50:51 | 0 | 充值 | accepted | comment_posted_205290 |
2019-12-20 07:56:13 | 0 | 充值 | accepted | comment_posted_205404 |
2019-12-26 01:45:51 | 0 | 充值 | accepted | comment_posted_205418 |
2019-12-30 12:38:35 | 0 | 充值 | accepted | comment_posted_205436 |
2020-01-10 03:16:50 | 0 | 充值 | accepted | comment_posted_205472 |
2020-01-13 02:48:15 | 0 | 充值 | accepted | comment_posted_205487 |
2020-01-19 14:26:21 | 0 | 充值 | accepted | comment_posted_205532 |
2020-01-22 12:31:53 | 0 | 充值 | accepted | comment_posted_205542 |
2020-01-31 02:02:50 | 0 | 充值 | accepted | comment_posted_205627 |
2020-01-31 10:17:50 | 0 | 充值 | accepted | comment_posted_205634 |
2020-02-09 14:50:34 | 0 | 充值 | accepted | comment_posted_205741 |
2020-02-10 11:35:21 | 0 | 充值 | accepted | comment_posted_205756 |
2020-02-11 09:49:52 | 0 | 充值 | accepted | comment_posted_205766 |
2020-02-18 13:43:31 | 0 | 充值 | accepted | comment_posted_205868 |
2020-03-14 08:03:51 | 0 | 充值 | accepted | comment_posted_206253 |
2020-03-16 05:26:54 | 0 | 充值 | accepted | comment_posted_206269 |
2020-03-18 01:34:41 | 0 | 充值 | accepted | comment_posted_206286 |
2020-03-22 16:11:13 | 0 | 充值 | accepted | comment_posted_206326 |
2020-03-27 09:17:00 | 0 | 充值 | accepted | comment_posted_206382 |
2020-03-31 08:15:11 | 0 | 充值 | accepted | comment_posted_206420 |
2020-04-06 01:42:16 | 0 | 充值 | accepted | comment_posted_206470 |
2020-04-06 14:49:12 | 0 | 充值 | accepted | comment_posted_206478 |
2020-04-06 23:35:22 | 0 | 充值 | accepted | comment_posted_206481 |
2020-04-07 08:26:12 | 0 | 充值 | accepted | comment_posted_206484 |
2020-04-07 12:49:03 | 0 | 充值 | accepted | comment_posted_206487 |
2020-05-10 13:08:15 | 0 | 充值 | accepted | comment_posted_206644 |
2020-05-10 13:09:44 | 0 | 充值 | accepted | comment_posted_206645 |
2020-06-09 11:43:08 | 0 | 充值 | accepted | comment_posted_206828 |
2020-06-09 11:44:31 | 0 | 充值 | accepted | comment_posted_206829 |
2020-06-13 08:22:41 | 0 | 充值 | accepted | comment_posted_206837 |
2020-06-16 00:47:23 | 0 | 充值 | accepted | comment_posted_206847 |
2020-06-16 00:47:33 | 0 | 充值 | accepted | comment_posted_206848 |
2020-06-23 05:07:43 | 0 | 充值 | accepted | comment_posted_206879 |
2020-07-04 01:50:41 | 0 | 充值 | accepted | comment_posted_206952 |
2020-07-07 06:44:07 | 0 | 充值 | accepted | comment_posted_206958 |
2020-08-19 08:30:04 | 0 | 充值 | accepted | comment_posted_207101 |
2020-08-31 00:43:04 | 0 | 充值 | accepted | comment_posted_207136 |
2020-08-31 09:41:16 | 0 | 充值 | accepted | comment_posted_207139 |
2020-08-31 09:42:31 | 0 | 充值 | accepted | comment_posted_207140 |
2020-08-31 11:35:58 | 0 | 充值 | accepted | comment_posted_207141 |
2020-08-31 11:36:45 | 0 | 充值 | accepted | comment_posted_207142 |
2020-09-01 00:54:37 | 0 | 充值 | accepted | comment_posted_207144 |
2020-09-01 10:11:07 | 0 | 充值 | accepted | comment_posted_207149 |
2020-09-02 04:56:33 | 0 | 充值 | accepted | comment_posted_207155 |
2020-09-05 14:01:15 | 0 | 充值 | accepted | comment_posted_207175 |
2020-09-06 08:28:04 | 0 | 充值 | accepted | comment_posted_207182 |
2020-09-23 12:58:42 | 0 | 充值 | accepted | comment_posted_207286 |
2020-10-05 02:19:06 | 0 | 充值 | accepted | comment_posted_207368 |
2020-10-09 12:35:01 | 0 | 充值 | accepted | comment_posted_207391 |
2020-10-10 03:26:55 | 0 | 充值 | accepted | comment_posted_207401 |
2020-11-02 15:32:32 | 0 | 充值 | accepted | comment_posted_207572 |
2020-11-05 15:27:22 | 0 | 充值 | accepted | comment_posted_207598 |
2020-12-09 06:22:03 | 0 | 充值 | accepted | comment_posted_207967 |
2020-12-30 12:29:48 | 0 | 充值 | accepted | comment_posted_208271 |
2020-12-31 14:45:39 | 0 | 充值 | accepted | comment_posted_208290 |
2021-01-05 10:18:57 | 0 | 充值 | accepted | comment_posted_208356 |
2021-01-12 00:55:34 | 0 | 充值 | accepted | comment_posted_208438 |
2021-01-16 13:51:33 | 0 | 充值 | accepted | comment_posted_208477 |
2021-01-20 01:37:22 | 0 | 充值 | accepted | comment_posted_208509 |
2021-01-20 01:38:50 | 0 | 充值 | accepted | comment_posted_208510 |
2021-03-26 00:54:07 | 0 | 充值 | accepted | comment_posted_209175 |
2021-04-05 03:13:36 | 0 | 充值 | accepted | comment_posted_209276 |
2021-04-26 10:16:09 | 0 | 充值 | accepted | comment_posted_209465 |
2021-05-12 09:24:33 | 0 | 充值 | accepted | comment_posted_209591 |
2021-06-28 09:08:28 | 0 | 充值 | accepted | comment_posted_209985 |
2021-07-27 15:02:40 | 0 | 充值 | accepted | comment_posted_210233 |
2021-08-07 13:38:26 | 0 | 充值 | accepted | comment_posted_210318 |
2021-08-17 02:16:09 | 0 | 充值 | accepted | comment_posted_210380 |
2021-08-17 02:17:40 | 0 | 充值 | accepted | comment_posted_210381 |
2021-09-07 10:02:41 | 0 | 充值 | accepted | comment_posted_210603 |
2021-09-10 04:08:09 | 0 | 充值 | accepted | comment_posted_210638 |
2021-09-29 05:40:14 | 0 | 充值 | accepted | comment_posted_210839 |
2021-12-09 09:05:37 | 0 | 充值 | accepted | comment_posted_211485 |
2021-12-24 00:07:59 | 0 | 充值 | accepted | comment_posted_211628 |
2022-01-12 11:58:31 | 0 | 充值 | accepted | comment_posted_212125 |
2022-01-21 06:06:01 | 0 | 充值 | accepted | comment_posted_212332 |
2022-02-24 09:49:05 | 0 | 充值 | accepted | comment_posted_212739 |
2022-03-28 00:43:32 | 0 | 充值 | accepted | comment_posted_213145 |
2022-05-05 16:11:24 | 0 | 充值 | accepted | comment_posted_215064 |
2022-05-11 08:47:55 | 0 | 充值 | accepted | comment_posted_215344 |
2022-05-15 23:03:09 | 0 | 充值 | accepted | comment_posted_215611 |
Odoo 15的手册上周整理完第四章,按顺序约每周一章,此前受疫情影响暂停了几周。翻译这本书不是我的唯一计划,所以进度上请见谅。关于Odoo 14那套《指南》,难度上会略高于《手册》,并且一些章节是基于闭源的企业版的
2022-05-16 07:03:06 发表在 最好用的免费ERP系统Odoo 15开发手册会的,被上海的疫情打乱了计划,电量正在逐步恢复 :razz:
2022-05-11 16:47:53 发表在 Python进阶系列二:数组序列好的,安排!本章已加班更新完
2022-05-06 00:11:22 发表在 第二章 Odoo 15开发之开发环境准备抱歉,连续经历苏州和上海的两轮疫情确实有点躺平了,近日开始正常更新,公众号就叫"AlanHou",PC 端右侧边栏有二维码
2022-03-28 08:43:28 发表在 第二章 Odoo 15开发之开发环境准备英文版预计周末出版,中文翻译请关注我的博客或公众号
2022-02-24 17:49:03 发表在 最好用的免费ERP系统Odoo 15开发手册Odoo的主要用户是中小企业,并且很多是企业内部使用,基本不存在大并发的场景,Python 的开发效率在这里具有很大优势
2022-01-21 14:05:58 发表在 Django实现企业内部统一管理-多数据库操作你是批量发送邮件吗?批量的话建议使用 MailChimp, Amazon SES等服务,我自己使用并没有觉得邮件这块需要做什么优化,还有看看有没有携带附件以及 SMTP 服务本身是否分发就比较慢
2022-01-12 19:58:28 发表在 Odoo 14开发者指南第二十三章 在Odoo中管理email示意用于逻辑判断
2021-12-24 08:07:56 发表在 Odoo 14前端框架OWL之动画感谢反馈
2021-12-09 17:05:35 发表在 Odoo 14开发者指南第五章 基本服务端开发Odoo14中删除@api.multi
2021-09-29 13:40:12 发表在 Odoo 14开发者指南第一章 安装Odoo开发环境