Odoo 快速入門與實戰:Python 開發 ERP 指南
劉金亮 著
- 出版商: 機械工業
- 出版日期: 2019-05-01
- 定價: $474
- 售價: 8.5 折 $403
- 語言: 簡體中文
- ISBN: 7111625307
- ISBN-13: 9787111625308
-
相關分類:
Python、企業資源規劃 Erp
立即出貨 (庫存 < 3)
買這商品的人也買了...
-
$967WPF 編程寶典 -- 使用 C# 2012 和 .NET 4.5 (第4版) (Pro WPF in C# 2012: Windows Presentation Foundation in .NET 4.5)
-
$250$213 -
$500$390 -
$690$538 -
$899Odoo 12 Development Essentials: Fast-track your Odoo development skills to build powerful business applications, 4th Edition
-
$918Odoo 12 Development Cookbook 3/e
-
$857Kubernetes 權威指南:從 Docker 到 Kubernetes 實踐全接觸, 4/e
-
$1,000$790 -
$403PostgreSQL 指南:內幕探索
-
$1,000$790 -
$780$616 -
$600$450 -
$1,650$1,568 -
$479$455 -
$474$450 -
$880$695 -
$480$379 -
$520$411 -
$880$695 -
$500$250 -
$390$308 -
$600$468 -
$479$455 -
$1,000$790 -
$480$379
商品描述
本書是目前市面上關於Odoo開發較為全面和系統的書,也是Odoo開發領域的經典書籍。作者結合自己在ERP領域的豐富經驗,以及對Python開發和Odoo框架的深入理解,系統講解了Odoo開發的相關知識。
本書內容由淺入深,包括基礎篇、技術研發篇和實戰篇,共19章內容,書中穿插了Odoo開發的豐富案例。基礎篇(第1~5章)系統介紹了進行Odoo開發所需要的技術準備,章節安排簡明扼要,讀者可以快速掌握Python語言基礎、PostgreSQL基礎、Odoo安裝及應用知識。技術研發篇(第6~14章)聚焦在Odoo二次開發技術,結合bug管理系統的實戰全面介紹了Odoo視圖、模型、ORM、Odoo網站開發及QWeb等技術。實戰篇(第15~19章)通過培訓機構管理系統的設計與實現將前面介紹的各種技術進行融合使用,幫助讀者融會貫通,最終完成一個前端可以通過PC和微信小程序訪問,後端包括學生管理、教師管理、排課管理、費用管理等功能的管理系統。
如果您是一個中小企業主,那麽肯定會面臨ERP選型的難題。SAP、Oracle等產品適合大型企業,版權昂貴,運維成本高。而國內的ERP產品封閉性強,穩定性差,一般需要大量的二次開發,增加了成本,也讓運維變得困難。
所以,對於中小企業來說免費的Odoo是首選。不過我們還要避免出現“免費即最貴”的情況。中小企業應該爭取邊學習邊實施自己的ERP,這時候本書將是您的首選。
本書特色:
本書彌補了市場空缺,讓國內Odoo開發人員可以更高效地提升技能。
書中按照Odoo學習的難易程度安排章節,涵蓋從入門到實戰技巧的全部知識點,是初學者的不二選擇,也是Odoo開發人員的首選工具書。
本書不僅有對Python基礎語法和PostgreSQL基本使用方法的介紹,還包括小程序與Odoo的連接等實用技能、系統運維和部署、性能優化等一線實操技能。
本書支持Odoo11和Odoo12,同時兼顧了Odoo8以後的版本,書中對各版本的重要區別進行了介紹,讀者不需要再為到底學習哪一個版本而困擾。
本書的技術研發篇和實戰篇分別提供了實戰案例,真正體現了“通過實戰學Odoo”的思想。
本書的示例代碼和實戰項目都通過GitHub提供了源碼,讀者可以方便地下載調試,並且可以在GitHub發布issue進行提問和溝通。
較之官方開發手冊,本書最大的優勢是:作者會根據Odoo版本的更新在GitHub增加新的分支,避免了Odoo開發人員需要不停學習新版本的尷尬,確保“一書在手,Odoo開發全懂”。
作者簡介
劉金亮,研究生畢業於北京大學,現任用友集團架構師。曾經作為不錯顧問參與IBM、Accenture、Capgemini的ERP諮詢和實施項目,服務過的公司包括中石化、中石油、上海醫藥、ABB、中國萬達等。在ERP領域有超過10年的工作經驗,對SAP和Odoo都有深刻理解,本書是其對於Odoo使用的經驗結晶。
目錄大綱
目錄
前言
篇基礎篇
第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表單頁面145
11.3權限控制148
11.4總結150
第12章後端視圖151
12.1菜單項和窗口動作152
12.2表單視圖154
12.2.1表頭156
12.2.2工作表157
12.3視圖字段160
12.4按鈕162
12.5看板視圖164
12.5.1看板視圖基本用法166
12.5.2看闆卡片佈局169
12.5.3看闆卡選項菜單171
12.5.4看板視圖動作172
12.6其他類型的視圖172
12.6.1列表視圖172
12.6.2搜索視圖174
12.6.3日曆視圖175
12.6.4圖形和數據透視圖177
12.7總結179
第13章QWeb 180
13.1客戶端QWeb 180
13.1.1 JavaScript表達式181
13.1.2動態替換屬性181
13.1.3循環指令183
13.1.4條件指令184
13.1.5渲染值184
13.1.6設置變量值185
13.1.7復用模板185
13.1.8 CSS和JavaScript 186
13.2報表187
13.2.1安裝wkhtmltopdf 187
13.2.2創建商業報表188
13.3服務器端QWeb 188
13.3.1 QWeb報表模板188
13.3.2報表展示數據190
13.3.3基於客制化SQL的報表190
13.4總結192
第14章與外部系統的集成193
14.1 Python客戶端調用193
14.2客戶端應用程序開發196
14.3 ERPpeek客戶端199
14.4 OdooRPC庫200
14.5總結201
第三篇實戰篇
第15章Odoo培訓行業管理系統設計204
15.1開發背景204
15.1.1培訓機構一般情況介紹205
15.1.2培訓機構管理中出現的主要問題206
15.1.3系統開發的必要性和可行性207
15.2系統功能設計207
15.2.1系統業務流程分析207
15.2.2系統功能需求分析209
15.3模塊及環境211
15.3.1模塊詳細設計212
15.3.2 git與環境213
15.4總結216
第16章系統核心模塊實現217
16.1科目及教師217
16.1.1模型218
16.1.2視圖220
16.2班級和學生224
16.2.1模型225
16.2.2視圖228
16.3課程和計劃229
16.3.1模型230
16.3.2視圖235
16.4菜單236
16.5安全238
16.6總結239
第17章費用及CRM模塊的實現240
17.1費用模塊240
17.2 CRM模塊244
17.3總結246
第18章系統小程序端實現247
18.1小程序開發簡介247
18.1.1小程序的Hello World 248
18.1.2小程序代碼結構249
18.2 Odoo與小程序的集成252
18.2.1小程序登錄機制252
18.2.2小程序鑑權255
18.2.3小程序登錄Odoo 257
18.3模型260
18.3.1模塊整體架構260
18.3.2重要模型261
18.4總結265
第19章測試與部署266
19.1系統測試266
19.1.1單元測試266
19.1.2配置測試267
19.1.3編寫測試用例268
19.1. 4測試異常269
19.1.5運行測試270
19.1.6 YAML測試270
19.2系統調試271
19.2.1開發工具271
19.2.2服務器端開發選項271
19.2.3調試272
19.2.4 Python調試272
19.2.5會話調試示例273
19.2.6交互性Python調試器274
19.2.7打印信息和記錄日誌274
19.2.8 “殺死”運行中的進程275
19.3系統部署275
19.3.1可用的預建包275
19.3.2安裝依賴276
19.3.3準備專用系統用戶277
19.3.4從源代碼安裝Odoo 277
19.3.5設置配置文件278
19.3 .6多進程運行279
19.3.7將Odoo設置為系統服務279
19.3.8創建系統服務280
19.3.9創建Upstart/sysvinit服務281
19.3.10命令行檢查Odoo服務282
19.3.11使用反向代理282
19.3 .12將Nginx設置為反向代理283
19.3.13設置HTTPS 284
19.3.14 Nginx優化285
19.3.15長輪詢286
19.3.16服務器和模塊更新287
19.4總結288