Widget de menú desplegable dinámico que permite resolver opciones desde el backend de:
> - fields.Char > - fields.Integer > - fields.Selection
NOTA: Este widget no está pensado para extender fields.Selection, sino para filtrar los valores de selección. Para un conjunto de opciones totalmente dinámico, utilice fields.Char en su lugar.
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 nuevo widget de campo "Dynamic Dropdown" para formularios de Odoo. Permite a los desarrolladores mostrar un desplegable cuyas opciones se obtienen del servidor, opcionalmente en función de otro campo del mismo formulario.
Este módulo es un bloque de construcción técnico para desarrolladores de Odoo más que una funcionalidad de negocio lista para usar. Registra un nuevo widget de campo llamado "Dynamic Dropdown" que se puede usar en campos char, integer y selection.
Cuando se abre un formulario, el widget llama a un método del modelo del registro para obtener la lista de opciones disponibles y las muestra en un desplegable. El nombre del método se configura en las opciones del campo, y se puede pasar contexto adicional, por ejemplo el valor de otro campo del formulario. Si ese otro campo cambia, las opciones se vuelven a obtener.
Reglas de negocio añadidas por el widget: - Si el valor actual ya no está entre las opciones devueltas por el servidor, el campo se vacía automáticamente. - Para campos integer, una selección no numérica o cero se rechaza como no válida. - Las selecciones vacías se almacenan como sin valor.
Para demostrar cómo funciona, el módulo incluye una configuración de demostración en el modelo ir.filters: se añade un campo integer manual llamado "Dropdown Integer" al formulario de filtro, y un método de demostración devuelve una pequeña lista de opciones, añadiendo una opción extra cuando el administrador está entre los usuarios seleccionados. Esta demostración solo se instala con datos de demostración y está pensada como ejemplo, no como una funcionalidad de negocio.
Depende de
Lo necesitan otros módulos
Modelos y campos (1)
- ir.filters · amplía un modelo existente
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 17.0
Confirmado el 2026-11-03 en la rama 17.0 de OCA/web.
terminal Instalación y uso
Documentación de OCA · Odoo 19.0@api.model
def method_name(self):
values = [
('value_a', 'Title A'),
]
if self.env.context.get('depending_on') == True:
values += [
('value_b', 'Title B'),
]
return values<field
name="other_field"
/>
<field
name="char_field"
widget="dynamic_dropdown"
options="{'values':'method_name'}"
context="{'depending_on': other_field}"
/>DEMO
En los filtros definidos por el usuario se ha añadido un nuevo campo para mostrar la funcionalidad, se llama Dropdown Integer. Si cualquier usuario selecciona solo la opción One debería aparecer, pero si es Mitchell Admin debería ser posible seleccionar la opción One y Two.
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.