# odoo **Repository Path**: openerphk/odoo ## Basic Information - **Project Name**: odoo - **Description**: odoo 开发教程开源CRM/ERP开发教程1. python 函数类;2. js 函数类;3. 模型数据类;4. 算法类;5. 测试类;6. 运维类; - **Primary Language**: Python - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 8 - **Forks**: 2 - **Created**: 2019-01-13 - **Last Updated**: 2025-01-15 ## Categories & Tags **Categories**: ebooks-manual **Tags**: None ## README Odoo OpenERP.HK # 教程 Tutorials 本教程主要为odoo新手入门开发路线图教程 Standard Tutorials for trainees # Contents 目录 模块开发 Module Development ============================== <设计思路> 开放封闭原则(Open Closed Principle): 面向扩展开放: 也就是说模块的行为是能够被扩展的。当应用程序的需求变化时,我们可以使模块表现出全新的或与以往不同的行为,以满足新的需求。 面向修改封闭: 模块的源代码是不能被侵犯的,任何人都不允许修改已有源代码。 里氏替换原则(Liskov Substitution Principle):使用基类对象指针或引用的函数必须能够在不了解衍生类的条件下使用衍生类的对象。 依赖倒置原则(Dependency Inversion Principle):将共性属性进行提取,形成新的对象,减少顶层模型对基础逻辑的依赖。 接口分离原则(Interface Segregation Principle):接口分离,胖接口。 单一职责原则(Single Responsibility Principle):单一工作。 排错 Debugging ============================== 终端日志 浏览器【控制台】 浏览器【开发者工具】 - <源代码> 浏览器【开发者工具】 - <网络> QWeb 质量控制 Quality Assurance ============================== 自动化测试 集成测试: 单独测试python代码和js代码是非常有用的,但是它不能证明web客户机和服务器是协同工作的。 为了做到这一点,我们可以编写另一种测试:浏览。 浏览是一些有趣的业务流程的小场景。它定义了应遵循的一系列步骤。然后,运行浏览将创建一个幻影浏览器,将其指向适当的URL,并根据场景模拟单击和输入。 版本迁移 Porting Modules ============================== 新API - Odoo v_10 迁移至 Odoo v_11 ,从 python2 迁移至 python3 `find . -type f -name '*.py' | xargs perl -i -p0e 's/(?