Odoo丨Odoo框架源码研读三:异常处理与定制化开发
Odoo源码研读的第三期内容:异常处理与定制化开发。
*异常处理*
Odoo中的Exception是对Python内置异常做了继承和封装,设定了自己核心的几个Exception。
而对异常的处理和Python内置异常的处理方式并无不同。
异常处理:
raise:通过raise来主动抛出异常。
try-except-finally:捕获异常进行处理。
*流程引擎与业务流程*
流程引擎:
作为ERP产品,必然要处理很多流程,对于流程的控制,Odoo是通过状态值的变化来进行控制的,也就是简单的状态机。
以销售模块为例:
一个销售订单从报价(Draft)到销售订单(Sale),实际上就是订单状态的改变。
业务流程: