Skip to content

Módulo Base

Tanto las extensiones de servidor como las de cliente se empaquetan como módulos que, opcionalmente, se cargan en una base de datos. Un módulo es una colección de funciones y datos que tienen como objetivo un solo propósito.

Los módulos Odoo pueden agregar una nueva lógica de negocios a un sistema Odoo o alterar y ampliar la lógica de negocios existente. Se puede crear un módulo para agregar las reglas contables de un país al soporte contable genérico de Odoo, mientras que un módulo diferente puede agregar soporte para la visualización en tiempo real de una flota de autobuses.

Todo en Odoo comienza y termina con módulos. Los desarrolladores agrupan sus características comerciales en módulos Odoo. Los principales módulos orientados al usuario están marcados y expuestos como aplicaciones, pero la mayoría de los módulos no son aplicaciones. Los módulos también pueden denominarse complementos y los directorios donde los encuentra el servidor Odoo forman addons_path.

Un módulo Odoo puede contener los siguientes elementos:

  • Objetos de negocio (Se declaran como una clase de Python)
  • Vistas de objetos (La visualización de la interfaz de usuario)
  • Archivos de datos (Archivos XML o CSV que declaran datos del modelo)
  • Controladores web (Gestionar las solicitudes de los navegadores web)
  • Datos web estáticos (Imágenes, archivos CSS o JavaScript)
  • Directorymodule
    • Directorymodels
      • *.py
      • __init__.py
    • Directorydata
      • *.xml
    • __init__.py
    • __manifest__.py

Un módulo de Odoo se declara por su __manifest__.py. Los objetos de negocio ( archivos de Python ), se organizan como un paquete de Python con un archivo __init__.py.

{
"name": "Demo 19",
"version": "19.0",
"summary": "The Demo 19",
"category": "",
"author": "Odoo-Group",
"maintainer": "",
"website": "",
"license": "LGPL-3",
"contributors": [
"",
],
"depends": [
"base",
],
"data": [
"security/groups.xml",
"security/ir.model.access.csv",
"views/test.xml",
"views/menu.xml",
],
"installable": True,
"auto_install": False,
"application": True,
}