769eafb483
Flectra is Forked from Odoo v11 commit : (6135e82d73
)
91 lines
3.0 KiB
ReStructuredText
91 lines
3.0 KiB
ReStructuredText
:banner: banners/module.jpg
|
|
|
|
=======
|
|
Modules
|
|
=======
|
|
|
|
|
|
|
|
.. _reference/module/manifest:
|
|
|
|
Manifest
|
|
========
|
|
|
|
The manifest file serves to declare a python package as an Odoo module
|
|
and to specify module metadata.
|
|
|
|
It is a file called ``__manifest__.py`` and contains a single Python
|
|
dictionary, where each key specifies module metadatum.
|
|
|
|
::
|
|
|
|
{
|
|
'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',
|
|
],
|
|
}
|
|
|
|
Available manifest fields are:
|
|
|
|
``name`` (``str``, required)
|
|
the human-readable name of the module
|
|
``version`` (``str``)
|
|
this module's version, should follow `semantic versioning`_ rules
|
|
``description`` (``str``)
|
|
extended description for the module, in reStructuredText
|
|
``author`` (``str``)
|
|
name of the module author
|
|
``website`` (``str``)
|
|
website URL for the module author
|
|
``license`` (``str``, defaults: ``LGPL-3``)
|
|
distribution license for the module
|
|
``category`` (``str``, default: ``Uncategorized``)
|
|
classification category within Odoo, rough business domain for the module.
|
|
|
|
Although using `existing categories`_ is recommended, the field is
|
|
freeform and unknown categories are created on-the-fly. Category
|
|
hierarchies can be created using the separator ``/`` e.g. ``Foo / Bar``
|
|
will create a category ``Foo``, a category ``Bar`` as child category of
|
|
``Foo``, and will set ``Bar`` as the module's category.
|
|
``depends`` (``list(str)``)
|
|
Odoo modules which must be loaded before this one, either because this
|
|
module uses features they create or because it alters resources they
|
|
define.
|
|
|
|
When a module is installed, all of its dependencies are installed before
|
|
it. Likewise dependencies are loaded before a module is loaded.
|
|
``data`` (``list(str)``)
|
|
List of data files which must always be installed or updated with the
|
|
module. A list of paths from the module root directory
|
|
``demo`` (``list(str)``)
|
|
List of data files which are only installed or updated in *demonstration
|
|
mode*
|
|
``auto_install`` (``bool``, default: ``False``)
|
|
If ``True``, this module will automatically be installed if all of its
|
|
dependencies are installed.
|
|
|
|
It is generally used for "link modules" implementing synergic integration
|
|
between two otherwise independent modules.
|
|
|
|
For instance ``sale_crm`` depends on both ``sale`` and ``crm`` and is set
|
|
to ``auto_install``. When both ``sale`` and ``crm`` are installed, it
|
|
automatically adds CRM campaigns tracking to sale orders without either
|
|
``sale`` or ``crm`` being aware of one another
|
|
|
|
.. _semantic versioning: http://semver.org
|
|
.. _existing categories:
|
|
https://github.com/odoo/odoo/blob/master/odoo/addons/base/module/module_data.xml
|