扫码阅读
手机扫码阅读

Odoo丨Odoo框架源码研读一:前后端交互

631 2023-09-22

Odoo神州数码云基地:Odoo框架源码研读之前后端交互

本篇文章是Odoo框架源码研读系列的一部分,重点探讨了Odoo框架中前后端交互的机制。Odoo框架被广泛用于企业应用的快速开发,适用于各种规模的企业。

源码文件结构

Odoo 14.0的源码结构包括了项目的帮助文档、Odoo的启动脚本、底层模块以及基础业务模块,如CRM和Sales等。

框架结构

经过六个月的学习和实战,作者对Odoo前后端交互有了深入理解,并总结出了相关的框架结构。

前后端交互

Odoo的前端基础框架和后台基础模块交互的API都封装在addons下的web模块。通过Controller控制器来控制前后端的交互,并使用http.route装饰器将方法标记为请求处理器。

Controller控制器

Controller控制器基于功能划分,通过继承和装饰器注解形成对外API接口。

Dispatcher分发模块

Dispatcher负责处理请求在到达Controller之前的流程,包括接收请求、设置上下文环境、封装请求对象,并根据数据库信息调用不同的分发逻辑。

IrHttp

IrHttp作为HTTP路由器进行进一步的请求处理,包括匹配路由信息、权限校验、封装requestHandler。

HttpRequest和JsonRequest

HttpRequest和JsonRequest处理请求,封装响应,HttpRequest特有的功能是校验csrf_token,JsonRequest则专注于封装json_response。

结语

本篇文章仅介绍了Odoo框架中前后端交互的概览,后续文章将深入介绍Odoo的ORM。作者黄华信欢迎读者交流和讨论。

想要了解更多,点击 查看原文