odoo創建新模塊步驟-創建我們的第一個模塊
環境:PostgreSQL+Pycharm+MacOS
目標:完成第一個"請假"模塊的創建
步驟:
- 新建文件夾-用於存放自己創建的所有模塊
- 命令生成新模塊
- 設置 models
- 設置 views
- 設置 security
- 設置__manifest__.py
- 運行安裝模塊
- 完成
下來來詳細說明:
01
新建文件夾myaddons
這沒什麼好說的,自己創建的模塊最好不要放到 odoo本身模塊路徑下面,不易維護。以後我們自己創建的模塊都放在這個文件夾下面。
重要:設置一下 odoo.conf 中的 addons_path,添加 myaddons 的路徑,否則 odoo 無法找到你添加的模塊
02
創建新模塊-scaffold
命令行:./odoo-bin scaffold qingjia myaddons
說明:
scaffold: Odoo提供的一種機制來幫助建立一個新的空模塊
qingjia: 自己定義的模塊名稱
myaddons: 文件夾路徑
接下來我們可以看到 qingjia 模塊中的一堆文件,下面來一項項進行說明
03
models
用於記錄Odoo模型名稱,定義數據庫字段
請假模塊我們需要定義字段:申請人,請假天數,開始時間,請假事由
說明:
_name: 設置數據庫表名。用.隔開,在數據庫中表示為 qingjia_qingjiadan
_description: 設置描述
後面是定義各種字段的類型,這個放以後來詳細說明
04
View
Odoo視圖設置,展示給用戶的視圖,我們來定義一個簡單的tree 與 form 視圖
- tree 視圖
這是一部分代碼,先進行一下說明再往後面寫
odoo視圖使用的 xml 文件
<field>請假單 list/<field>
這裡定義 tree 視圖,表格的標題
<field>qingjia.qingjiadan/<field>
定義關聯的 model 數據表,與 models 中的_name一致
定義在表格中顯示的字段,name 關聯到 models 中定義的字段名
- form 視圖
結構與上面類似,這裡就不做說明了。
- 操作
odo
說明:
定義對tree與 form 的操作,操作id 與菜單相關聯。這裡定義了“請假單”是“請假”的二級菜單
05
Secrity
這裡是定義訪問權限的地方,以後會詳細說明
說明:id,與 name 可以自己命名,一般以數據表名稱來命名。
重點是 model_id,只能以 model_+表名形式。這裡我們 models 的_name 定義的是qingjia.qingjiadan。所以這部分我們以 model_qingjia_qingjiadan 來命名。
後面的 1,1,1,1分別代表上面的讀,寫,創建,刪除權限。一般結合用戶組來使用
06
__manifest__.py
說明:
前面都是定義一些模塊的基本信息
data 中將定義的視圖 xml 文件,與security 的訪問控制文件放進來,這樣才能加載。注意逗號分隔
07
運行與安裝模塊
上一篇文章有介紹,這裡還是可以看一下設置。
方式 1:設置完成後點擊這兩個中一個即可
方式 2:命令行運行,terminal 輸入
./odoo-bin -c odoo.conf
08
測試
未報異常說明成功,打開瀏覽器輸入:127.0.0.1:8069
默認密碼:admin 登錄系統
應用-所有 qingjia 模塊,安裝模塊
完成我們請假模塊,用戶可以創建修改刪除數據
tree 視圖對應
form 視圖對應
撒花
閱讀更多 壹學好 的文章