跳至內容
選單
此問題已被標幟
1 回覆
5440 瀏覽次數

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!

頭像
捨棄
最佳答案

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.

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
1
10月 15
6141
1
2月 25
891
3
5月 24
15087
0
3月 16
3171