Se rendre au contenu
Menu
Cette question a été signalée
1 Répondre
5439 Vues

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
Ignorer
Meilleure réponse

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
Ignorer
Publications associées Réponses Vues Activité
1
oct. 15
6141
1
févr. 25
891
3
mai 24
15087
0
mars 16
3171