Odoo17架构概述
创始人
2024-12-27 07:06:09
0

多层架构

Odoo遵循多层架构,这意味着演示,业务逻辑和数据存储是分开的。更具体地说,它使用三层架构。

UI展示层

UI表示层是 HTML5、JavaScript 和 CSS 的组合。

应用程序的最顶层是用户界面。界面的主要功能是将任务和结果转换为用户可以理解的内容。

旧版 JavaScript 框架,Odoo15以后正在积极过渡到使用其内部开发的OWL框架作为其表示层的一部分。

逻辑层

逻辑层专门用 Python 编写,这一层协调“应用程序,处理命令,” 做出逻辑决策和评估,并执行 计算。它还在两个相邻层之间移动和处理数据。

数据层

支持 PostgreSQL 作为 RDBMS。

在这里,信息被存储和从数据库或文件系统中检索出来。然后信息被传回逻辑层进行处理,最终再传回给用户。

模块

开发人员将他们的业务功能分组到Odoo模块中。主要面向用户的模块被标记为应用程序并公开,但大多数模块都不是应用程序。 模块也可以称为插件,

服务器和客户端扩展都打包为模块,这些模块可以选择装入数据库中。模块是针对单个目的的函数和数据的集合。

根据模块的范围,Odoo开发可以在三层架构中的任何一层中完成。

Odoo中的所有内容都以模块开始和结束。

模块的组成

模块可由一种或多种不同类型要素组成:

业务对象

例如发票,被声明为 Python 类。由于 ORM 层,这些类中定义的字段会自动映射到数据库列。

对象视图

定义 UI 显示

数据文件

声明模型数据的 XML 或 CSV 文件:

  • views or reports, 视图或报告,

  • configuration data (modules parametrization, security rules),
    配置数据(模块参数化、安全规则)、

  • 演示数据

  • 其它文件

 Web 控制器

处理来自 Web 浏览器的请求

静态 Web 数据

Web 界面或网站使用的图像、CSS 或 JavaScript 文件

模块结构

每个模块都是模块目录中的一个目录。模块目录是使用该 --addons-path 选项指定的。

An Odoo module is declared by its manifest.
Odoo模块由其目录内的manifest清单文件声明。


当Odoo模块包含业务对象(即Python文件)时,它们被组织为带有 __init__.py 文件的Python包。此文件包含模块中各种 Python 文件的导入指令。


一个简化的模块目录结构示例:

module ├── models │   ├── *.py │   └── __init__.py ├── data │   └── *.xml ├── __init__.py └── __manifest__.py

相关内容

热门资讯

黑科技辅助挂“遇悦游戏辅助”外... 黑科技辅助挂“遇悦游戏辅助”外挂透视辅助挂(好像有挂)1、下载好遇悦游戏辅助辅助软件之后点击打开,先...
第五分钟有挂!禅游指尖四川修改... 第五分钟有挂!禅游指尖四川修改器(辅助挂)2025新版(原本是有挂)1、这是跨平台的禅游指尖四川修改...
2分钟辅助挂!皇豪互娱控制系统... 2分钟辅助挂!皇豪互娱控制系统(辅助挂)切实是有挂(详细辅助揭秘攻略)亲,关键说明,皇豪互娱控制系统...
黑科技辅助“雀神麻将小程序辅助... 黑科技辅助“雀神麻将小程序辅助软件”外挂透视辅助助手(竟然是真的有挂)小薇(透视辅助)致您一封信;亲...
1分钟有挂!微友约局辅助(辅助... 1分钟有挂!微友约局辅助(辅助挂)详细教程(原本有挂)1.微友约局辅助 ai辅助创建新账号,点击进入...
第3分钟了解!越乡游辅助工具(... 第3分钟了解!越乡游辅助工具(辅助挂)本来是真的有挂(详细辅助科技教程)1、这是跨平台的越乡游辅助工...
五分钟脚本!闲来辅助神器下载2... 五分钟脚本!闲来辅助神器下载2022(辅助挂)揭秘攻略(从前真的有挂)(1)五分钟脚本!闲来辅助神器...
黑科技辅助“超凡辅助软件”外挂... 黑科技辅助“超凡辅助软件”外挂透视辅助科技(竟然存在有挂);1、下载好超凡辅助软件辅助软件之后点击打...
第九分钟辅助器!道游互娱辅助(... 第九分钟辅助器!道游互娱辅助(辅助挂)总是是有挂(详细辅助必备教程)1、玩家可以在道游互娱辅助软件透...
第二分钟辅助挂!微乐小程序挂哪... 第二分钟辅助挂!微乐小程序挂哪里(辅助挂)安装教程(一直是有挂)1、不需要AI权限,帮助你快速的进行...