Desinstalando un módulo manualmente en Odoo

16 de octubre de 2024 por
Gustavo Orrillo
| Sin comentarios aún
 

Hay veces que necesitamos desinstalar manualmente un módulo en Odoo (este es la clase de trucos que uno debe probar con mucho cuidado). Porque hay veces que alguien instala un módulo problemático, con bugs por ejemplo. 

Ahora, como podemos hacerlo? Muchas veces no podemos acceder a Odoo porque tenemos la siguiente pantalla


Entonces no podemos desinstalar un módulo mediante la interface de Odoo. Que podemos hacer en esos casos? Bueno, tanto en las instalaciones on-premise como en odoo.sh tenemos acceso a psql. Y si hacemos el siguiente query en la tabla ir_module_module (donde se almacena la información de los módulos de Odoo)

select distinct state from ir_module_module

Y veremos una salida como la siguiente:


Donde podemos ver que hay módulos instalados y no instalados. Entonces el secreto es actualizar el estado a "no instalado" para desinstalar el módulo. Primero debemos identificar el ID del módulo. Supongamos que el mismo tiene un nombre que empieza con la palabra campos:

select id,name,state from ir_module_module where name like 'campos%'

Lo que nos devuelve el ID del módulo. Luego tenemos que actualizar el estado a "no instalado" para el ID seleccionado

update ir_module_module set state = 'uninstalled' where id = <id del módulo a desinstalar>;

Y listo, despues de actualizar la base de datos podemos ver que podemos utilizar Odoo de vuelta.


Vale la pena aclarar que esto no desinstala el módulo per se (ni borra las columnas del módulo ni nada por el estilo). Solo hace que Odoo no se utilice el módulo al momento de cargar Odoo. O sea que lo primero que debe hacer resolver el issue que causa que el módulo sea problemático.

Gustavo Orrillo 16 de octubre de 2024
Compartir
Categorías
Archivar
Identificarse dejar un comentario