概要
odoo每个模块都有固定的目录结构,也有一些是约定熟成的结构命名规则。
内容
my_addons # 自定义Odoo模块的根目录,名称要唯一
├─ controllers # 控制器目录,用于处理HTTP请求。平常常说的接口。(重点)
│ ├─ __init__.py # 控制器模块的初始化文件
│ └─ demo_controllers.py # 定义控制器类和路由的文件
├─ data # 数据文件目录,用于存放模块所需的静态数据
│ └─ demo_data.xml # 静态数据定义文件,按照官方格式进行书写
├─ demo # 示例数据目录,用于演示或测试的数据
│ └─ demo_demo.xml # 示例数据定义文件,按照官方格式进行书写
├─ reports # 报告文件目录,用于定义模块生成的报表
│ └─ demo_reports.xml # 报表定义文件,报表的样式结构等配置
├─ i18n # 国际化文件目录,用于存放翻译文件
├─ doc # 存放文档和帮助文件。
├─ models # 模型目录,用于定义数据模型和业务逻辑(重点)
│ ├─ __init__.py # 模型模块的初始化文件
│ └─ demo_model.py # 定义数据模型和业务逻辑的文件
├─ security # 安全设置目录,用于定义访问控制规则(重点)
│ ├─ ir.model.access.csv # 模型访问控制规则文件
│ └─ demo_security.xml # 其他安全规则定义文件(一般用来定义权限组)
├─ static # 静态文件目录,用于存放CSS、JavaScript等静态资源(前端重点)
│ ├─ description # 模块描述目录,用于存放模块图标等描述文件
│ │ └─ icon.png # 模块图标(固定名称)
│ └─ src # 静态资源源文件目录
│ ├─ js # JavaScript文件目录
│ └─ scss # SCSS(CSS预处理器)文件目录
├─ views # 视图目录,用于定义用户界面(重点)
│ ├─ templates.xml # 模板文件,用于定义网页模板
│ └─ demo_views.xml # 视图文件,用于定义界面视图(tree、form、kanban等)
├─ __init__.py # 模块的初始化文件
└─ __manifest__.py # 模块描述文件,包含模块的元数据(这个会单独说明,可以查看博主相关文章)
小结
多写多敲多思考,毕竟,知己知彼才能看懂源码。