没有合适的资源?快使用搜索试试~ 我知道了~
首页精通Odoo开发和使用
资源详情
资源评论
资源推荐

精通 Odoo
2016 年 11月 25 日

目 录
1 ERP 简介 1
1.1 Odoo 历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 ERPⅡ 或商业智能化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 什么是商业智能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Odoo 框架简介 7
2.1 python 模块分析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2 python2 还是 python3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3 Odoo 的安装和配置 9
3.1 PostgreSQL 数据库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Ubuntu14.04 下可能缺失的软件包 . . . . . . . . . . . . . . . . . . . . . . . 11
3.3 网页显示 node.js 方面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.4 其他问题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.5 通过命令行运行时的配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.5.1 –xmlrpc-port=8888 . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.5.2 –addons-path=addons . . . . . . . . . . . . . . . . . . . . . . . . 12
3.5.3 数据库的一些配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.5.4 –save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.6 将安装环境封装起来 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.7 文档编译 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 初入 Odoo 17
4.1 管理数据库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.2 登录界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3 Administrator 首选项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.4 导入一个翻译 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.5 新的 Demo 用户 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
i

4.6 模块管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.7 修改公司信息 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.8 打开技术特性支持之后 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.9 进销存和财务系统的抽象讨论 . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.9.1 以采购部门为例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.10 安装和配置模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5 创建自己的模块 27
5.1 快速生成模块骨架 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.1.1 python 模块的 init 文件 . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.1.2 作为 Odoo 模块的说明文件 . . . . . . . . . . . . . . . . . . . . . . . 29
5.2 安装自定义模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.2.1 模块文件夹管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.3 一个简单的演示模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3.1 controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3.2 views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.3.3 models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.3.4 security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.3.5 美化网页 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.4 加分项: 通过 pgadmin3 来查看数据库 . . . . . . . . . . . . . . . . . . . . . 39
5.4.1 安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4.2 连接服务器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.4.3 图形化查询 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
6 Odoo 开发基础: 请假模块第一谈 43
6.1 纯理论讨论 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6.2 定义模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.3 加入菜单 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6.3.1 act_window 的属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.3.2 menuitem 的属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.4 视图优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.4.1 修改 tree 视图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.4.2 修改 form 视图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.5 完整的 views.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.6 给模块加个图标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
7 Odoo 开发基础: 工作计划模块第一谈 55
7.1 数据访问权限管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
ii

7.1.1 access rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.1.2 record rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
8 扩展现有模块-继承机制 65
8.1 给模块增加 field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
8.2 修改已有的 field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8.3 重载原模型的方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
8.3.1 什么是 Recordset . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.3.2 Odoo 里面的 domain 语法 . . . . . . . . . . . . . . . . . . . . . . . 68
8.3.3 recordset 的 search 方法 . . . . . . . . . . . . . . . . . . . . . . . 69
8.4 视图 xml 文件的继承式修改 . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
8.4.1 视图元素添加 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.4.2 原视图元素属性修改 . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.5 多态继承 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.6 修改其他数据文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.6.1 删除记录 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.6.2 更新数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.7 委托继承 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
9 理解模型内的数据文件 75
9.1 理解外部 id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
9.2 使用外部 id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
9.3 导出或导入数据文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
9.4 快捷输入标签 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.5 用 field 标签设置值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.5.1 eval 语法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.5.2 ref 属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
9.5.3 One2many 和 Many2many 的 eval 赋值 . . . . . . . . . . . . . . . 79
10 Odoo 开发基础: 请假模块第二谈 81
10.1 本例涉及到的数据库表格简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.2 工作流概念入门 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
10.2.1 定义工作流对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
10.2.2 创建节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
10.2.3 创建连接 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
11 Odoo 模型层详解 93
11.1 _name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
iii

11.2 各个表头属性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
11.3 name 字段 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
11.4 具体模型的数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
11.5 模型间的关系 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
11.6 工作流 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
12 Odoo 视图层详解 97
13 附录 99
13.1 Odoo 里老的 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
13.2 PostgreSQL 数据库命令行操作 . . . . . . . . . . . . . . . . . . . . . . . . . 99
13.2.1 命令行数据库备份 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
13.3 反向代理 (reverse proxy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
13.3.1 安装 ngnix 软件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
13.3.2 强制 https 连接 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
13.3.3 nginx 优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
13.3.4 轮询机制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
13.4 跟踪项目源码初始化进程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
13.4.1 base 模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
13.4.2 web 模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
13.4.3 web_kanban 模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
13.5 配置会计科目 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
13.5.1 配置会计科目类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
13.5.2 配置会计科目 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
13.6 分录 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
13.7 新建业务伙伴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
13.7.1 新建业务伙伴标签 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
13.7.2 新建客户 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
13.8 创建新的产品 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
13.9 设置会计年度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
13.10向供应商下单 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
13.11会计学入门 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
13.11.1财务报表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
13.11.2原始凭证 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
13.11.3账户 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
13.11.4分类帐 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
13.11.5会计科目表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
13.11.6报告期间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
iv
剩余116页未读,继续阅读













安全验证
文档复制为VIP权益,开通VIP直接复制

评论1