Skip to content

Odoo 最小模块

模块定义

模块是可以加载到数据库中的一组功能和数据的集合。

模块结构

real_estate_for_teaching
├── controllers
│   ├── *.py
│   └── __init__.py
├── data
│   └── *.xml
├── models
│   ├── *.py
│   └── __init__.py
├── reports
│   └── *.xml
├── security
│   ├── ir.model.access.csv
│   └── *.xml
├── static
│   └── *.*
├── views
│   └── *.xml
├── __init__.py
└── __manifest__.py

模块运作的基本原理

对模块的识别和解析是 Odoo 框架的核心部分。无论是 Odoo 自身模块,还是我们后续扩展的模块,在 Odoo 框架看来,都是一组功能和数据的集合。模块在安装的时候,将数据部分保存到数据库;比如 xml 视图作为数据的一部分,被保存在数据库中,当用户访问的时候,Odoo 首先从数据库中读取对应的视图,然后交给 Qweb 模板引擎进行解析,最后将解析得到的 H5 页面返回给浏览器,呈现在用户面前。

最小模块结构

real_estate_for_teaching
└── __manifest__.py
manifest基本配置
python
{
    "name": "Real Estate",
    "version": "16.0.1.0.1",
    "summary": "Real Estate For Teaching",
    "category": "Dev/Teaching",
    'license': 'LGPL-3',
    "application": True,
    "support": "hspring0077@gmail.com",
    "author": "hspring",
    "website": "https://yeada.tech",
}

模块截图详细配置请参考官方文档

视频讲解