王佳明 度云4G模块的TCP透传实现 ML307R 核心板(RTU-8IO)是一款支持单卡单待的 4G Cat.1 全网通模块,硬件和软件均有 多个版本,区别为对外接口和软件协议。支持多种协议和云平台,具体协议请查看对应版本的 AT 命令手册。https://www.domall.cn/RTU-8IO.html 1、查看核心板硬件手册,了解各个引脚功能。 通过状态指示灯可以判断模块是否正常工作。 本次实验需...
罗贤龙 Frappe中JavaScript的API 表单脚本 标准格式脚本 创建DocType时,会自动创建可以编写脚本的文件。 格式frappe.ui.form.on(doctype, {}) 子脚本与父脚本再同一文件中。 自定义表单脚本 通过在系统中创建客户端脚本来编写表单脚本。 表单事件 表单脚本依靠事件来触发,这些事件将frm作为其处理程序函数中的第一个参数。 setup(frm){} 表单首次创建时触发。 before_load(frm)...
罗贤龙 Frappe中Python的API 服务器API 从服务器发布事件:frappe.publish_realtime() 对话框显示进度条:frappe.publish_progress() 后台运行线程方法 frappe.enqueue() 可传参数有methond、queue='default'、timeout=None、is_async=True、now=False、job_name=None、enqueue_after_com...
谢潮聪 第4章:安全性-简介 第 4 章:安全性 - 简介 在上一章中,我们创建了第一个表用于存储业务数据。在Odoo这样的商业应用程序中,第一个要考虑的问题是谁可以访问数据。Odoo提供允许访问的安全机制,允许特定用户访问数据。 Odoo是一个高度数据驱动的系统。尽管行为是使用Python代码自定义的,但 module 的价值在于它在加载时设置的数据。加载数据的一种方法是通过 CSV 文件。一个例子是在安装基础模块时加载的国...
谢潮聪 第3章:模型和基本字段 第 3 章:模型和基本字段 在上一章的结尾,我们能够创建Odoo模块。然而,在这一点上,它仍然是一个空壳,不允许我们存储任何数据。在我们的real estate模块中,我们想要存储与属性(名称、描述、价格、居住面积等)。Odoo 框架提供工具来促进数据库交互。 在继续练习之前,请确保已安装模块,即它必须在 Apps 列表中显示为 'Installed'。 Odoo的一个关键组件是ORM层。此层避免...
谢潮聪 第2章:新应用程序 第 2 章:新应用程序 本章的目的是为创建全新的Odoo模块奠定基础。我们将从头开始,从最低要求开始,使我们的模块被Odoo识别。 在接下来的章节中,我们将逐步添加功能以构建现实的业务案例。 我们的新模块将涵盖一个非常具体的业务领域:房地产广告模块。 以下是广告的主列表视图 表单视图的顶部区域汇总了属性的重要信息,例如名称、属性类型、邮政编码等。第一个选项卡描述了:卧室,起居区,车库,花园… 第二...
谢潮聪 第1章:架构概述 第 1 章:架构概述 Odoo遵循多层架构。多层架构是开发人员在开发过程当中面对复杂且易变的需求采取的一种以隔离控制为主的应对策略。每一层都可以单独部署。将整个项目自下而上的分为:数据持久(数据访问)层,逻辑(业务)层,UI(展现)层。 Odoo的展现层是HTML5、JavaScript和CSS的组合,逻辑层使用Python语言编写,数据持久层只支持将PostgreSQL作为 RDBMS。 为了完...
徐朋朋 odoo-ORM2 本文参考: ORM API — Odoo 18.0 documentation Odoo 环境(Environment) odoo.api.Environment 类在 Odoo 中用于存储和管理与 ORM 相关的各种上下文数据。环境类在 Odoo 中充当了一个数据容器,提供了对数据库、用户、上下文等信息的访问。 构造函数 class odoo.api.Environment(cr, uid, c...
徐朋朋 Odoo 模型继承与扩展机制解读 本文参考: ORM API — Odoo 18.0 documentation Odoo 模型继承与扩展机制解读 Odoo 提供了三种主要方式来扩展模型,每种方式都有特定的使用场景和机制: 传统继承(Classical Inheritance) 新模型基于现有模型创建,继承原始模型的字段、方法和元信息,但原模型保持不变。 模型扩展(Extension) 直接扩展现有模型,将新字段和方法添加到现有模...
徐朋朋 odoo-ORM1 本文参考: ORM API — Odoo 18.0 documentation 1、ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。 ORM在业务逻辑层和数据库层之间充当了桥梁的...
黄晓锋 logrotate 日志文件管理工具 在odoo的配置文件当中,可以为odoo的日志配置存储目录 logfile=/var/log/odoo/odoo.log 但odoo忘了对日志文件定期进行分割的配置,这可能会导致日志文件过大,查询起来也不方便。幸好,Linux提供一个完美适配这一问题的命令工具——Logrotate,顾名思义,这个命令是通过轮转的方式对日志进行管理。 如果我们有接触过Linux基础命令的话,可能会了解任务计划任务管...
周润源 Odoo性能优化实战(profiler) 背景: 由于项目业务逻辑复杂、数据量大、多系统对接等复杂场景造成系统响应慢。 优化思路: 从用户角度出发,在浏览器打开分析接口请求,根据接口响应时间利用profiler图定位接口内部代码具体优化点。当然,建议优化业务类接口,odoo原本接口相对比较成熟稳定,并且框架本身也有完整的体系,很容易引起连带问题,风险较高。 所以本文仅介绍业务代码接口优化方案。 开始之前先简单介绍下profiler。 pr...