Key Components

Within the repository you’ll find the following relevant sub-directories:

Each module follows the typical Odoo addon structure: manifest file (__manifest__.py), Python models, XML views, security/access files, possibly data or demo CSVs.


Core Registry Add-on: g2p_registry_addon

This add-on provides the baseline registry framework for PBMS, handling the registrant models, UI scaffolding and JS/CSS enhancements.

File
Purpose

__manifest__.py

Module metadata: name, version, data/ security/ view files to load. Declares dependency on g2p_pbms and other modules.

models/

Python files defining the core Registry ORM models. This is the foundation of the registry infrastructure. All inheriting from a base g2p.registry ORM.

views/

XML files that define the user interface: list/tree views, form views, search filters for the registry models. Mostly inheriting and updating existing views already defined in the main odoo module.

security/

Access control definitions containing model access rules. Ensures correct permissions for reading/editing registry models. Access group must be from the main PBMS module (g2p_pbms.<group_name> )

static/

Static assets (JS/CSS) used for UI enhancements and browser based event logic or translation files (po) if the module or needs multi-language support.

data/ (optional)

Initial seed data or configuration records required for basic registry operation (e.g., default ID type entries, registry tags).


Registry Type Add-on: g2p_registry_type_addon

This module lets you communicate to the PBMS about the registries you are going to be defining in g2p_registry_addon , which helps in enabling front-loading of PBMS UI with registry type data since registry specific UI and model enhancements are performed later by the core registry add-on module.

File
Purpose

__manifest__.py

Metadata for the specific registry type module: declares dependency on some odoo inbuilt modules.

models/

Python files defining ORM models for target model mapping. These are standalone and very minimal, only storing the model names and their target registry names.

security/

Access rules specific to this module, if applicable. Generally not needed.

static/

Contains the JS/CSS, if needed. Generally, only stores the icon in the /description folder.

Last updated

Was this helpful?