Bản kê khai mô-đun

Rõ ràng

Tệp kê khai dùng để khai báo gói python dưới dạng mô-đun SoOn và chỉ định siêu dữ liệu của mô-đun.

Đó là một tệp có tên __manifest__.py và chứa một từ điển Python duy nhất, trong đó mỗi khóa chỉ định siêu dữ liệu mô-đun.

{
    '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',
    ],
}

Các trường bảng kê khai có sẵn là:

tên (str, bắt buộc)

tên mô-đun mà con người có thể đọc được

phiên bản (str)

Phiên bản của mô-đun này phải tuân theo quy tắc phiên bản ngữ nghĩa

`` mô tả`` (`` str``)

mô tả mở rộng cho mô-đun, trong reStructuredText

tác giả (str)

tên của tác giả mô-đun

trang web (str)

URL trang web cho tác giả mô-đun

giấy phép (str, mặc định: LGPL-3)

giấy phép phân phối cho mô-đun. Những giá trị khả thi:

  • GPL-2

  • GPL-2 hoặc bất kỳ phiên bản nào mới hơn

  • GPL-3

  • GPL-3 hoặc bất kỳ phiên bản nào mới hơn

  • AGPL-3

  • LGPL-3

  • Giấy phép khác được OSI phê duyệt

  • OEEL-1 (Giấy phép phiên bản doanh nghiệp SoOn v1.0)

  • OPL-1 (Giấy phép độc quyền của SoOn v1.0)

  • Sở hữu khác

category (str, mặc định: Uncategorized)

danh mục phân loại trong SoOn, miền kinh doanh thô cho mô-đun.

Mặc dù nên sử dụng danh mục hiện có nhưng trường này có dạng tự do và các danh mục không xác định sẽ được tạo nhanh chóng. Hệ thống phân cấp danh mục có thể được tạo bằng cách sử dụng dấu phân cách /, ví dụ: Foo / Bar sẽ tạo một danh mục Foo, một danh mục Bar là danh mục con của Foo, và sẽ đặt Bar làm danh mục của mô-đun.

phụ thuộc (list(str))

Các mô-đun SoOn phải được tải trước mô-đun này, vì mô-đun này sử dụng các tính năng do họ tạo hoặc vì nó thay đổi các tài nguyên mà họ xác định.

Khi một mô-đun được cài đặt, tất cả các phần phụ thuộc của nó sẽ được cài đặt trước nó. Tương tự như vậy, các phần phụ thuộc sẽ được tải trước khi tải mô-đun.

Ghi chú

Mô-đun base luôn được cài đặt trong mọi phiên bản SoOn. Nhưng bạn vẫn cần chỉ định nó làm phần phụ thuộc để đảm bảo mô-đun của bạn được cập nhật khi base được cập nhật.

dữ liệu (danh sách(str))

Danh sách các tệp dữ liệu phải luôn được cài đặt hoặc cập nhật cùng với mô-đun. Danh sách các đường dẫn từ thư mục gốc của mô-đun

`` demo`` (danh sách(str))

Danh sách các tệp dữ liệu chỉ được cài đặt hoặc cập nhật ở chế độ minh họa

auto_install (bool hoặc list(str), mặc định: False)

Nếu True, mô-đun này sẽ tự động được cài đặt nếu tất cả các phần phụ thuộc của nó được cài đặt.

Nó thường được sử dụng cho "mô-đun liên kết" thực hiện tích hợp tổng hợp giữa hai mô-đun độc lập.

Ví dụ: sale_crm phụ thuộc vào cả salecrm và được đặt thành auto_install. Khi cả bán hàngcrm được cài đặt, nó sẽ tự động thêm tính năng theo dõi chiến dịch CRM vào các đơn đặt hàng mà bán hàng hoặc crm không biết về nhau.

Nếu là một danh sách thì nó phải chứa một tập hợp con các phần phụ thuộc. Mô-đun này sẽ tự động được cài đặt ngay khi tất cả các phần phụ thuộc trong tập hợp con được cài đặt. Các phụ thuộc còn lại cũng sẽ được cài đặt tự động. Nếu danh sách trống, mô-đun này sẽ luôn được cài đặt tự động bất kể sự phụ thuộc của nó và những mô-đun này cũng sẽ được cài đặt.

external_dependency (dict(key=list(str)))

Một từ điển chứa các phụ thuộc python và/hoặc nhị phân.

Đối với các phần phụ thuộc của python, khóa python phải được xác định cho từ điển này và phải gán danh sách các mô-đun python sẽ được nhập cho nó.

Đối với các phụ thuộc nhị phân, khóa bin phải được xác định cho từ điển này và phải gán danh sách các tên thực thi nhị phân cho nó.

Mô-đun sẽ không được cài đặt nếu mô-đun python không được cài đặt trong máy chủ hoặc không tìm thấy tệp thực thi nhị phân trong biến môi trường PATH của máy chủ.

`` ứng dụng`` (bool, mặc định: False)

Mô-đun này có nên được coi là một ứng dụng chính thức (True) hay chỉ là một mô-đun kỹ thuật (Sai) cung cấp một số chức năng bổ sung cho mô-đun ứng dụng hiện có.

tài sản (`` dict``)

Định nghĩa về cách tải tất cả các tệp tĩnh trong các gói nội dung khác nhau. Xem trang assets để biết thêm chi tiết về cách mô tả các gói.

thể cài đặt (`` bool`` mặc định: True)

Liệu người dùng có thể cài đặt mô-đun từ Giao diện người dùng Web hay không.

người bảo trì (str)

Người hoặc tổ chức chịu trách nhiệm bảo trì mô-đun này, theo mặc định, tác giả được coi là người bảo trì.

{pre_init, post_init, gỡ cài đặt__hook (str)

Các hook để cài đặt/gỡ cài đặt mô-đun, giá trị của chúng phải là một chuỗi biểu thị tên của hàm được xác định bên trong __init__.py của mô-đun.

pre_init_hook lấy con trỏ làm đối số duy nhất, hàm này được thực thi trước khi cài đặt mô-đun.

post_init_hook lấy một con trỏ và một sổ đăng ký làm đối số, hàm này được thực thi ngay sau khi cài đặt mô-đun.

uninstall_hook lấy một con trỏ và một sổ đăng ký làm đối số của nó, hàm này được thực thi sau khi gỡ cài đặt mô-đun.

Chỉ nên sử dụng các hook này khi yêu cầu thiết lập/dọn dẹp cho mô-đun này cực kỳ khó khăn hoặc không thể thực hiện được thông qua api.

hoạt động (`` bool``)

Không dùng nữa. Được thay thế bằng auto_install.