第三章:新應用程序?

本章的目的是為創建一個全新的Odoo模塊打下基礎。我們將從零開始,最少的內容使我們的模塊被Odoo識別。在接下來的章節中,我們將逐步添加功能,構建一個現實的業務案例。

房地產廣告模塊?

我們的新模塊將涵蓋一個非常特定的業務領域,因此不包括在標準模塊集中:房地產。值得注意的是,在開發新模塊之前,最好驗證Odoo是否已經提供了回答特定業務案例的方法。

這是包含一些廣告的主列表視圖的概述:

列表視圖 01

表單視圖的頂部區域總結了房產的重要信息,例如名稱、房產類型、郵政編碼等。第一個選項卡包含描述房產的信息:臥室、起居室面積、車庫、花園等。

表單視圖 01

第二個選項卡列出了該房產的報價。我們可以在這里看到潛在買家可以在預期售價之上或之下提出報價。賣方有權接受報價。

表單視圖 02

這里有一個快速視頻展示模塊的工作流程。

希望這個視頻很快就會錄制出來 :-)

準備插件目錄?

參考 : 有關此主題的文檔可以在 清單 中找到。

注解

目標 :本節的目標是讓Odoo識別我們的新模塊,它現在是一個空殼子。它將在應用程序中列出:

新模塊出現在列表中

創建模塊的第一步是創建一個新目錄。為了方便開發,我們建議您首先創建目錄 /home/$USER/src/custom 。在這個目錄中,我們添加另一個目錄 estate ,這是我們的模塊。

一個模塊必須包含至少兩個文件: __manifest__.py 文件和一個 __init__.py 文件。 __init__.py 文件現在可以保持為空,我們將在下一章節回到它。另一方面, __manifest__.py 文件必須描述我們的模塊,不能保持為空。它唯一必需的字段是 name ,但通常包含更多信息。

請看 CRM 文件 作為一個例子。除了提供模塊的描述信息( name , category , summary , website …),它還列出了它的依賴項( depends )。依賴項意味著Odoo框架將確保在安裝我們的模塊之前安裝這些模塊。此外,如果這些依賴項中的任何一個被卸載,那么我們的模塊和 依賴于它的任何其他模塊也將被卸載 。想想你最喜歡的Linux發行版包管理器( apt , dnf , pacman …):Odoo的工作方式相同。

Exercise

創建所需的插件文件。

創建以下文件夾和文件:

  • /home/$USER/src/custom/estate/__init__.py

  • /home/$USER/src/custom/estate/__manifest__.py

The __manifest__.py 文件應該只定義模塊的名稱和依賴項?,F在唯一必需的框架模塊是 base 。

重啟Odoo服務器并將 custom 文件夾添加到 addons-path

$ ./odoo-bin --addons-path=../custom,../enterprise/,addons

進入應用程序,點擊更新應用程序列表,搜索“estate”,然后……噠噠噠,您的模塊出現了!它沒有出現嗎?也許嘗試刪除默認的“應用程序”過濾器;-)

警告

請記得按照前一章節中所述啟用 開發者模式 ,否則您將看不到 更新應用列表 按鈕。

Exercise

將您的模塊變成一個’應用程序’。

__manifest__.py 中添加適當的鍵,以便在“應用程序”過濾器打開時顯示該模塊。

你甚至可以安裝這個模塊!但是顯然它是一個空殼,所以不會出現任何菜單。

一切順利嗎?如果是,那么讓我們 創建我們的第一個模型 !