The most important thing while developing a module is its structure. When we create a module, it has its own structure, and we should always make sure that we follow the module structure.
2. The most important thing while developing a module is its
structure. When we create a module, it has its own
structure, and we should always make sure that we follow
the module structure. A module consists of different
components such as models, views, security, etc.Mainly an
Odoo module is declared by its manifest.
3. • Each module requires a python file and a manifest file that are __init__.py file and
__manifest__.py file. The basic structure of the module is given below.
4. • __init__ .py
A module is also a Python package that consists of __init__ .py file that includes import
instructions for the module's numerous Python files. For example, if the module has a single
pythonfile.py file, then its __init__.py file contains:
from . import python file
5. • __manifest__.py
We can describe the name of the module, author name, version, description, company,
category, etc., in the manifest.
➔ Name - Name of the module.
➔ Description - Brief description of the module.
➔ Version- Here, we can specify the module version.
➔ License - Specify the distribution license
➔ Author - Author name of the module.
➔ Website - Module author’s website URL.
➔ Category - Specify the category name.
➔ Depends - specify the list of modules that must installed before installing the module.
➔ Data - With the installation of the module, these files are installed or updated.
➔ Demo - In active demonstration mode, the data files that are installed or updated.
6. ➢ The module has directories.
➢ models
➢ views
➢ demos
➢ static
➢ security
➢ data
➢ wizards, etc.
7. Models
The model file consists of __init__.py file, which imports all python files on that model's
directory.
Views
Views file consists of XML files for the user interface, with the actions and views like
forms, lists, etc. The format of creating an XML file is “demo.xml”
Data
Data file contains all data files along with the module's initial data.
8. Demo
It consists of data files with demonstration data, which is very useful for testing, training,
or module evaluation.
i18n
The i18n file contains the translation files, which include .po and .pot files. These files
are not required to mention on the manifest file.
9. • Security
It consists of XML files that generate access groups and record rules for security and
data files that define access control lists, such as the ir.model.access.csv file.
• Controllers
The Controllers folder consists of code files that provide that functionality for website
controllers.
• Static
All assets are expanded inside the static directory. Files in this directory are public and
accessible without a username and password. This directory contains JavaScript, style
sheets, images, and other items that aren't listed in the module manifest but need to be
referenced in the web template.
10. • Wizard
Wizard contains all files related to wizards. Wizards are used to holding intermediate
data in Odoo.
• Reports
Odoo helps us to generate pdf documents such as invoices and sales orders. The
report directory consists of all the files related to reports.
11. Check our company website
for related blogs and Odoo book.
https://www.youtube.com/watch?v=sqkMIpdy7V0