Este módulo implementa un sistema de componentes y es un bloque base para el Connector Framework. No obstante, se puede usar sin utilizar el Connector completo.
Documentación:
También puede que quieras consultar la Introduction to Odoo Components de @guewen.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 19.0Añade un marco técnico que permite a los desarrolladores registrar y usar 'componentes' reutilizables en lugar de solo modelos de Odoo. Proporciona los bloques de construcción base utilizados por los módulos de estilo conector.
Este módulo es una base técnica más que una funcionalidad de negocio. Introduce una forma de organizar el código en piezas reutilizables llamadas componentes, que se pueden buscar y usar en tiempo de ejecución en lugar de depender únicamente de los modelos estándar de Odoo.
- Añade un modelo abstracto
collection.basedel que otros módulos pueden heredar para definir una 'colección' (por ejemplo un backend). Sobre dicha colección, un métodowork_onabre una sesión de trabajo para un modelo dado. - Añade un modelo
component.builderque, cada vez que Odoo construye su registro, escanea los módulos instalados y registra todos los componentes declarados en un registro global. - Proporciona un componente base llamado
base, heredado implícitamente por todos los componentes. - Los componentes se pueden filtrar por colección, por el modelo sobre el que se aplican y por una etiqueta de 'uso', y se pueden recuperar uno a uno o como una lista.
- Se lanzan errores claros cuando ningún componente o varios componentes coinciden con una petición, y cuando el registro aún no está listo.
No añade menús, pantallas, informes ni reglas de negocio visibles para los usuarios finales. Solo toca los modelos técnicos collection.base y component.builder, y depende de la librería de Python cachetools para el almacenamiento en caché de las búsquedas de componentes.
Depende de
Lo necesitan otros módulos
Modelos y campos (3)
- base · modelo nuevo
- collection.base · modelo nuevo
- component.builder · modelo nuevo
Texto generado por IA (DeepSeek) al leer el código de la versión 19.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 8 confirmadas, 1 sin información de 9 versiones.
Fuentes · Odoo 18.0
Confirmado el 2026-11-03 en la rama 18.0 de OCA/connector.
terminal Instalación y uso
Documentación de OCA · Odoo 19.0Como desarrollador, tienes acceso a un sistema de componentes. Puedes encontrar la documentación en el código o en
En resumen, puedes crear componentes:
from odoo.addons.component.core import Component
class MagentoPartnerAdapter(Component): _name = 'magento.partner.adapter' _inherit = 'magento.adapter'
_usage = 'backend.adapter' _collection = 'magento.backend' _apply_on = ['res.partner']
Y después, encontrar el componente que necesitas en tiempo de ejecución (despacho dinámico a nivel de componente):
def run(self, external_id): backend_adapter = self.component(usage='backend.adapter') external_data = backend_adapter.read(external_id)
Para que los tests que usan componentes funcionen, necesitarás usar la clase base proporcionada por odoo.addons.component.tests.common:
- TransactionComponentCase
También hay algunas clases base específicas para probar el registro de componentes, usando la clase ComponentRegistryCase como clase base. Consulta los docstrings en tests/common.py.
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación, Configuración.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.