Ir al contenido
Menú
Se marcó esta pregunta
1 Responder
5445 Vistas

Hello,

I am creating my first module and I have one field that I am adding that will be a dropdown selection. Instead of hardcoding the options for that field, I would like to have a settings section so that a user can add which options will be available from that dropdown option, and then the user can select one of those options. Can anyone point me in the right direction as to how to do this? Thanks!

Avatar
Descartar
Mejor respuesta

You can create an object where you will keep your settings options

class my_settings(osv.osv):
    _name = "my.settings"
    _description = "Settings"
    _columns = {
        'name': fields.char('Setting name', size=64, required=True),
    }
    _sql_constraints = [
        ('name', 'unique(name)', 'Setting name must be unique')
    ]
    _order = 'name asc'


And in the main object of your module, you'll create a many2one connection to your settings table like this

class wtv(osv.osv):
    _name = "wtv"
    _description = "WTV"
    _columns = {
        'name': fields.char('Wtv name', size=64, required=True),
    'settings': fields.many2one('my.settings', 'Settings', help='Select an option from the dropdown'),
    }
    _sql_constraints = [ ('name', 'unique(name)', 'Setting name must be unique')   ]
    _order = 'name asc'

In your main wtv form view, when adding the <field name="settings" /> tag, a dropdown will be displayed with the contents of whatever is stored in the my_settings table.

Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
1
oct 15
6141
1
feb 25
893
3
may 24
15091
0
mar 16
3172