《Odoo快速入門與實戰:Python開發ERP指南》是2019年機械工業出版社出版的圖書,作者是劉金亮。
基本介紹
- 書名:Odoo快速入門與實戰:Python開發ERP指南
- 作者:劉金亮
- 出版社:機械工業出版社
- 出版時間:2019年5月1日
- ISBN:9787111625308
內容簡介,目錄,
內容簡介
本書包括基礎篇、研發技術篇和實戰篇,按照由基礎到進階,再到實戰的順序講解。基礎篇涉及Odoo簡介、Odoo的安裝與配置、Odoo套用概覽、Python基礎和PostgreSQL基礎。通過本篇的學習,可以讓讀者快速掌握Odoo二次開發所需具備的基礎知識。研發技術篇是本書的核心內容,涵蓋了搭建模型的基礎知識、模型建設進階內容、ORM介紹以及後端視圖的介紹。另外還包括了數據的導入和導出功能,以及安全設定等內容。在本篇的介紹過程當中,一直按照bug管理系統的開發為主線,從簡單功能一直到整個系統完整上線,讀者可以按照書中的代碼,一步一步來實現該系統。實戰篇則是對前面知識的融會貫通和提升,針對一個完整的培訓行業管理系統的開發進行講解,其系統的複雜性和難度都要比第二篇增強。
目錄
前言
第一篇 基礎篇
第1章 Odoo簡介 2
1.1 Odoo發展歷程 2
1.2 Odoo與主流ERP系統的對比 3
1.3 總結 4
第2章 安裝與配置 5
2.1 在Ubuntu上安裝Odoo 5
2.1.1 創建Odoo用戶並授權 5
2.1.2 更新依賴包並使用git克隆Odoo源碼 6
2.1.3 安裝Odoo依賴包及PostgreSQL 6
2.1.4 啟動Odoo服務 7
2.2 在Windows上安裝Odoo 8
2.2.1 準備工作 9
2.2.2 環境配置 9
2.3 使用和創建Odoo資料庫 10
2.3.1 創建Odoo資料庫 10
2.3.2 語言選擇 11
2.4 伺服器配置 13
2.4.1 Odoo伺服器配置檔案 13
2.4.2 遠程開發 15
2.5 安裝模組 16
2.5.1 配置模組外掛程式路徑 16
2.5.2 更新套用列表 16
2.6 總結 17
第3章 Odoo套用概覽 18
3.1 整體架構 18
3.2 什麼是開發者模式 19
3.3 開發者模式套用 20
3.3.1 模組需求簡介 21
3.3.2 向已有模型新增欄位 21
3.3.3 新建選單 25
3.3.4 新建自定義模型 28
3.3.5 新建視圖 29
3.3.6 安全性配置 30
3.4 base模組簡介 32
3.5 總結 32
第4章 Python基礎 33
4.1 Python簡介 33
4.2 安裝和設定 34
4.2.1 Anaconda的安裝 34
4.2.2 Anaconda Prompt包管理 35
4.3 基本語法 35
4.3.1 編碼 36
4.3.2 標識符 36
4.3.3 Python保留字 36
4.3.4 注釋 36
4.3.5 行與縮進 36
4.3.6 數值類型 37
4.3.7 字元串 37
4.3.8 布爾值 38
4.3.9 類型轉換 38
4.3.10 引入 38
4.3.11 萬物皆對象 39
4.3.12 元組 39
4.3.13 列表 40
4.3.14 字典 43
4.3.15 集合 44
4.3.16 列表、字典以及集合的推導式 45
4.3.17 函式 46
4.3.18 檔案和作業系統 48
4.4 面向對象的編程 48
4.4.1 self 49
4.4.2 對象的方法 49
4.4.3 __init__方法 49
4.4.4 類與對象的變數 50
4.4.5 繼承 51
4.4.6 裝飾器 52
4.5 總結 53
第5章 PostgreSQL基礎 54
5.1 PostgreSQL簡介 54
5.2 pgAdmin使用簡介 55
5.2.1 創建資料庫 55
5.2.2 刪除資料庫 55
5.2.3 使用SQL語句 57
5.3 PostgreSQL常用SQL語句 58
5.3.1 查詢語句 58
5.3.2 更新語句 59
5.3.3 刪除語句 59
5.3.4 插入語句 59
5.4 總結 59
第二篇 技術研發篇
第6章 自建套用入門 62
6.1 使用腳手架創建新模組 62
6.2 安裝和更新模組 64
6.3 模型 65
6.3.1 創建模型 66
6.3.2 常用屬性 67
6.3.3 保留欄位 67
6.3.4 模型繼承 67
6.4 視圖 69
6.4.1 新增選單 69
6.4.2 創建列表視圖 71
6.4.3 業務文檔表單視圖 72
6.4.4 搜尋視圖 74
6.4.5 視圖繼承 74
6.5 業務邏輯 76
6.6 安全性配置 77
6.6.1 訪問控制 77
6.6.2 網頁和控制器 79
6.7 總結 80
第7章 自建套用進階 81
7.1 模型 81
7.1.1 模型屬性 83
7.1.2 模型與python類 83
7.1.3 瞬態和抽象模型 84
7.1.4 透視已有模型 84
7.1.5 模型擴展 85
7.2 欄位 86
7.2.1 創建欄位 86
7.2.2 欄位常用屬性 87
7.2.3 特殊欄位 88
7.3 模型關係與複雜欄位 88
7.3.1 關係欄位 89
7.3.2 模型關係 89
7.3.3 one2many的逆向關係 91
7.3.4 層級結構關係 91
7.3.5 使用引用欄位的動態關係 92
7.4 更多模型繼承機制 93
7.4.1 使用原型繼承 93
7.4.2 使用委託繼承 94
7.5 視圖 94
7.6 總結 97
第8章 檔案相關數據操作 98
8.1 外部ID 98
8.2 導入導出數據 101
8.2.1 導出數據 101
8.2.2 導入數據 102
8.2.3 CSV中關聯欄位的導入 103
8.3 模組數據 104
8.3.1 演示數據 104
8.3.2 XML數據檔案 105
8.4 總結 108
第9章 ORM API基礎 109
9.1 常用裝飾器 109
9.1.1 記錄集處理裝飾器 109
9.1.2 專有目的裝飾器 110
9.2 ORM內置方法 112
9.2.1 模型寫入數據的方法 112
9.2.2 使用RPC的網頁端方法 113
9.3 數據導入導出方法 114
9.4 通信API 114
9.4.1 信箱和社交API 115
9.4.2 訊息子類型 116
9.4.3 發布訊息 116
9.4.4 增加關注者 117
9.5 總結 117
第10章 ORM:業務邏輯處理 118
10.1 嚮導 118
10.1.1 創建嚮導 118
10.1.2 嚮導模型 120
10.1.3 嚮導form 120
10.1.4 嚮導業務邏輯 123
10.1.5 異常處理 124
10.2 更多ORM API用法 126
10.2.1 shell命令 126
10.2.2 伺服器環境 127
10.2.3 事務和底層SQL 128
10.3 對記錄集的操作 130
10.3.1 查詢模型 130
10.3.2 單例模式 131
10.3.3 寫記錄集 131
10.3.4 日期和時間 132
10.3.5 操作記錄集 133
10.3.6 關係欄位 135
10.4 總結 135
第11章 創建網站 136
11.1 第一個頁面 136
11.1.1 創建新模組外掛程式 136
11.1.2 Hello World 137
11.1.3 Web功能擴展 138
11.1.4 Hello CMS 141
11.2 前端頁面渲染 142
11.2.1 CSS和JavaScript 142
11.2.2 列表頁面 143
11.2.3 表單頁面