-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Odoo快速入門與實戰:Python開發ERP指南

( 簡體 字)
作者:劉金亮 著類別:1. -> 程式設計 -> Python
譯者:
出版社:機械工業出版社Odoo快速入門與實戰:Python開發ERP指南 3dWoo書號: 51135
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:5/1/2019
頁數:288
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111625308
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

Odoo是什么

Odoo是一個開放源碼且功能完善的企業級管理軟件平臺,它不僅提供了ERP常規模塊,而且還允許使用人員進行靈活的實施配置。對于前臺配置解決不了的需求,還可以通過Odoo提供的平臺進行二次開發。

我曾在SAP領域工作了8年,參與和主導過的項目金額超過千萬元,因此我能深刻體會到一個好的ERP產品在實施過程中是多么重要。目前國內雖然也有不錯的ERP產品,但全是靠廠商及其合作伙伴來實施并進行二次開發,如果甲方想要自己培養技術人員則非常困難,很少有技術人員愿意將自己的職業發展方向捆綁在一個封閉又落后的技術框架上。這時候,Odoo開源及其使用Python開發的優點就顯現了出來,不僅企業可以免費配置使用,而且還可以方便地找到二次開發人員,甚至也可以找到具有學習熱情的內部人員。畢竟Python的魅力及其在互聯網領域越來越廣的應用,決定了以后Odoo開發的難度會越來越低。

Odoo良好的可擴展性可以媲美任何主流的ERP產品,其允許按照模塊實現新的需求;在二次開發的過程中,如果要修改已有功能的話,也不需要直接修改源碼,只需使用繼承的方式來進行增強和擴展,或者在子類中修改字段或方法。

Odoo從其前身OpenERP開始,就受到了來自社區的活躍更新的支持;目前,Odoo有數千個社區模塊,幾乎所有的主題都能找到相應的社區模塊,這也反過來進一步吸引了更多的人員參與到Odoo的社區中來。

誰適合閱讀本書

本書作為Odoo的開發指南,按照由簡入難的步驟對Odoo的開發進行了全面介紹,不僅可以讓你快速入門Odoo,同時也可以作為你進行項目實戰的不錯的參考資料。

本書適合于想使用Odoo進行開發的開發者,在閱讀本書前甚至不需要具備Python基礎編程知識,因為書中專門有一章(第4章)對Python進行了介紹。書中所列案例使用的代碼簡單明了,對于使用中會遇到的一些“坑”也給出了特別說明。

同時,本書也適合于Odoo的關鍵用戶和最終用戶,如果你在擁有Odoo系統的使用經驗的前提下,還希望提升自己的開發技能,以便日后在工作中能夠完成更為復雜的需求實現,那么本書將是非常好的參考用書。

如果你已經是Odoo開發人員,那么可以將本書作為不同版本之間的對比用書,畢竟從Odoo8到目前的Odoo12有了較大的變化。

最后,在校大學生也可以使用本書制作自己的案例、編寫論文,甚至直接作為未來工作的編程平臺。Odoo在國內的市場越來越大,特別是非一線城市對于Odoo人才的需求也越來越大,如果作為學生的你不想將自己未來的職場定位在北上廣深,那么Odoo將是一個非常不錯的選擇。

如何閱讀本書

本書在邏輯上分為三篇:基礎篇、技術研發篇和實戰篇。基礎篇(第1∼5章)包括了Odoo的介紹及安裝配置、Python基礎和PostgreSQL數據庫介紹。不了解Odoo的讀者請認真閱讀第一篇,以免在后面的章節中出現不了解的名詞。特別是沒有Python基礎的讀者,最好能夠認真學習第4章。

技術研發篇(第6∼14章)則專注在Odoo的技術范疇內,包括了從視圖到ORM和安全配置的全方位介紹,并且都是以bug管理系統的實現為示例來進行講解的,讀者在學習本篇內容時應邊參考本書邊動手實現。如果讀者已經有Odoo基礎,則可以直接下載本書的源碼,在遇到不理解的內容時再查找相應知識點。

而對于實戰篇(第15∼19章),其內容從培訓機構的管理系統的需求分析開始,再到劃分模塊,最后到具體的邏輯和視圖的實現,非常適合有充足時間的初學者,特別是學生。

讀者在閱讀本書時,要注意源碼的使用,具體的源碼下載方式會在后續的“源碼與勘誤支持”部分提供。

源碼與勘誤支持

書中提供了核心源碼,而且為了便于閱讀特意增加了行號。需要讀者注意的是,因為排版的問題,可能將原本屬于一行的代碼自動換行成兩行,所以請讀者以行號為準,凡是不帶行號的代碼說明都屬于上一行。
內容簡介:

本書是目前市面上關于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開發全懂”。
目錄:

前言
第一篇 基礎篇
第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
序: