模塊清單?

清單?

清單文件用于將Python包聲明為Odoo模塊并指定模塊元數據。

這是一個名為 __manifest__.py 的文件,包含一個 Python 字典,其中每個鍵指定模塊元數據。

{
    'name': "A Module",
    'version': '1.0',
    'depends': ['base'],
    'author': "Author Name",
    'category': 'Category',
    'description': """
    Description text
    """,
    # data files always loaded at installation
    'data': [
        'views/mymodule_view.xml',
    ],
    # data files containing optionally loaded demonstration data
    'demo': [
        'demo/demo_data.xml',
    ],
}

可用的清單字段為:

name ( str ,必填)

模塊的可讀名稱

version ( str )

該模塊的版本應遵循 語義化版本 規則

description ( str )

模塊的擴展描述,使用reStructuredText格式

author ( str )

模塊作者的姓名

website ( str )

模塊作者的網站 URL

license ( str ,默認值: LGPL-3 )

模塊的分發許可證??赡艿闹担?/p>

  • GPL-2

  • GPL-2或任何以后的版本

  • GPL-3

  • GPL-3或更高版本

  • AGPL-3

  • LGPL-3

  • 其他OSI批準的許可證

  • OEEL-1 (Odoo企業版許可證v1.0)

  • OPL-1 (Odoo專有許可證v1.0)

  • 其他專有

category ( str ,默認值: Uncategorized )

Odoo中的分類類別,模塊所屬的大致業務領域。

雖然建議使用 現有類別,但該字段是自由格式的,未知類別會即時創建??梢允褂梅指舴?/ 創建類別層次結構,例如 Foo / Bar 將創建一個類別 Foo ,一個作為 Foo 子類別的類別 Bar ,并將 Bar 設置為模塊的類別。

depends ( list(str) )

必須在此模塊之前加載的Odoo模塊,因為此模塊使用它們創建的功能或更改它們定義的資源。

當一個模塊被安裝時,它的所有依賴項都會在它之前被安裝。同樣,在加載模塊之前會先加載依賴項。

注解

模塊 base 在任何 Odoo 實例中都已安裝。但是,您仍然需要將其指定為依賴項,以確保在更新 base 時更新您的模塊。

data ( list(str) )

必須始終與模塊一起安裝或更新的數據文件列表。從模塊根目錄開始的路徑列表

demo ( list(str) )

僅在“演示模式”下安裝或更新的數據文件列表

auto_install ( boollist(str) ,默認值: False )

If True , 如果所有依賴項都已安裝,則此模塊將自動安裝。

通常用于實現兩個獨立模塊之間的協同集成的“鏈接模塊”。

例如, sale_crm 依賴于 salecrm ,并設置為 auto_install 。當 salecrm 都安裝時,它會自動將 CRM 活動跟蹤添加到銷售訂單中,而 無需 salecrm 相互了解。

如果是一個列表,它必須包含依賴項的子集。只要子集中的所有依賴項都安裝完畢,此模塊將自動安裝。剩余的依賴項也將自動安裝。如果列表為空,則無論其依賴項如何,此模塊都將始終自動安裝,并且這些依賴項也將被安裝。

external_dependencies ( dict(key=list(str)) )

一個包含 Python 和/或二進制依賴項的字典。

對于 Python 依賴項,必須為此字典定義 python 鍵,并將要導入的 Python 模塊列表分配給它。

對于二進制依賴項,必須為此字典定義 bin 鍵,并將二進制可執行文件的列表分配給它。

如果主機上未安裝Python模塊或二進制可執行文件未在主機的PATH環境變量中找到,則該模塊將不會安裝。

application ( bool ,默認值: False )

該模塊是否應被視為一個完整的應用程序( True ),還是僅作為技術模塊( False )提供一些額外的功能給現有的應用程序模塊。

assets ( dict )

定義了如何將所有靜態文件加載到不同的資源包中。有關如何描述資源包的詳細信息,請參見 assets 頁面。

installable ( bool 默認值: True )

用戶是否應該能夠從Web UI安裝模塊。

maintainer ( str )

負責維護此模塊的個人或實體,默認情況下,假定作者是維護者。

{pre_init, post_init, uninstall}_hook ( str )

Hooks 用于模塊的安裝/卸載,其值應該是一個字符串,表示在模塊的 __init__.py 中定義的函數的名稱。

pre_init_hook 函數只接受一個游標作為參數,該函數在模塊安裝之前執行。

post_init_hook 接受游標和注冊表作為參數,此函數在模塊安裝后立即執行。

uninstall_hook 接受游標和注冊表作為其參數,此函數在模塊卸載后執行。

這些鉤子應該僅在通過 API 進行此模塊的設置/清理非常困難或不可能時使用。

active ( bool )

已棄用。請使用 auto_install 。