5 buenas prácticas para desarrollar módulos en Odoo
Código limpio que sobrevive a las migraciones: convenciones, tests y estructura para módulos Odoo mantenibles a largo plazo.
Un módulo a medida puede ser tu mejor aliado o una deuda técnica que te perseguirá en cada actualización. La diferencia está en seguir las convenciones de Odoo y las buenas prácticas de Python.
1. Respeta la estructura estándar
Cada módulo debe tener una estructura predecible: models/, views/, security/, data/, tests/ y un __manifest__.py claro. La consistencia reduce el coste de mantenimiento.
2. Hereda, no reescribas
Aprovecha el modelo de herencia de Odoo en lugar de duplicar lógica del core. Así tu módulo seguirá funcionando cuando Odoo evolucione.
from odoo import models, fields, api
class SaleOrder(models.Model):
_inherit = "sale.order"
margin_pct = fields.Float(
string="Margen %",
compute="_compute_margin_pct",
store=True,
)
@api.depends("amount_total", "margin")
def _compute_margin_pct(self):
for order in self:
order.margin_pct = (
(order.margin / order.amount_total) * 100
if order.amount_total else 0.0
)
3. Define la seguridad desde el principio
No dejes los permisos para el final. Declara ir.model.access.csv y las record rules necesarias en cuanto creas un modelo nuevo.
4. Escribe tests
Odoo trae un framework de tests excelente. Unos pocos tests sobre la lógica crítica te ahorrarán horas de depuración y harán las migraciones mucho más seguras.
5. Documenta y versiona
Un buen README, mensajes de commit claros y versionado semántico del módulo hacen que cualquiera —incluido tu yo del futuro— pueda mantenerlo.
Conclusión
Desarrollar para Odoo no consiste solo en que "funcione hoy", sino en que siga funcionando tras la próxima migración. Estas cinco prácticas marcan la diferencia entre un activo y un lastre.
Comentarios (0)
Sé el primero en comentar.
Inicia sesión para dejar un comentario.
AccederLos comentarios se revisan antes de publicarse.
Artículos relacionados
Acciones automatizadas en Odoo: deja que el ERP haga el trabajo aburrido
Acciones de servidor, reglas de automatización y tareas planificadas: las tres piezas para que Odoo reaccione, avise y ejecute solo, sin que nadie se acuerde.
Informes PDF con QWeb en Odoo: del formulario al documento que cierra ventas
QWeb es HTML que se convierte en PDF. Te enseñamos a montar un informe, recorrer registros con t-foreach y por qué t-field te ahorra mil dolores de cabeza.
Herencia en Odoo: la función que decide si tu código sobrevive a las actualizaciones
Extensión clásica, delegación y herencia de vistas. Las tres formas de modificar Odoo sin tocar el core —y por qué heredar en vez de copiar te ahorra cada migración.