Saltar la navegación

La arquitectura de Odoo

Una arquitectura multicapa (MVC)

En este apartado veremos la estructura que deben tener esos módulos para que sean reconocidos e integrados por Odoo.

Antes de entrar en detalle, conviene resaltar que Odoo sigue una arquitectura multicapa.

Arquitectura multicapa de Odoo
Odoo.com. Arquitectura multicapa de Odoo (GNU/GPL)

La capa de presentación (vista) es una combinación de HTML5, JavaScript y CSS. La capa lógica (controlador) está exclusivamente escrita en Python, mientras que la capa de datos (modelo) utiliza PostgreSQL como sistema gestor de bases de datos.

Dependiendo del tipo de módulo que queramos desarrollar, deberemos modificar alguna o todas estas capas.

En Odoo esta implementación se realiza del siguiente modo:

  • Modelo: tablas en PostgreSQL
  • Vista: fichero XML
  • Controlador: Core de Odoo implementado en Python

Además, algunas características a destacar de Odoo son:

  1. Está implementado en Python, tanto su core como los módulos que lo extienden.
  2. Permite acceso al mismo mediante el protocolo RPC-XML servicios web. Docs
  3. Hace uso de ORM para acceder al modelo de datos. No es necesario ni recomendable el acceso directo a la base de datos. Docs
  4. Se pueden insertar y exportar datos mediante ficheros csv, xml...
  5. Vistas, informes, formularios, flujos de trabajo...

Además está integrado con bootstrap, incorpora mecanismos extra de seguridad a ciertas partes de una aplicación, mecanismo de plantillas propio Qweb, ...



Creado con eXeLearning (Ventana nueva)