Odoo Help


Changing selection field content

on 12/9/15, 5:23 AM 768 views


I need to change my slection elements after change field1 .

this code doesn't work , who has an idea how to fix it ?

_columns = {

'field1': fields.selection([('1', 'A'), ('1', 'B')], 'my filed 1'),

'field2': fields.selection([('aa', 'C'), ('bb', 'D')], 'my filed 2'),


def onchange_field2(self, cr, uid, ids,field1,context=None):

    lst= [('5', '5'), ('6', '6'), ('7', '7'), ('8', '8')]


        lst.remove([item for item in lst if item[0] == '5'][0])

    except IndexError as e:


    v = {'field2': lst}

    return {'value': v}

thank you


on 12/10/15, 5:23 PM
Krupesh Laiya
On 12/10/15, 6:15 AM

Yes you can not change using onchage of selection field value. It the collection of static value. you only used those value for selection which you had been define while creating selection field.

Thank you.

Axel Mendoza
On 12/9/15, 5:31 AM

Sorry but selection fields doesn't allow you to change the values like you are doing, they are a kind of static collection of options/values to select just one. For doing something like that you need to change your field definition to a many2one and apply a domain to the field that restrict the results to the matching records and the domain could be build and returned from an onchange

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 12/9/15, 5:23 AM
Seen: 768 times
Last updated: 12/10/15, 5:23 PM