Odoo Help


How to load enumeration values.

Binyam Assefa
on 10/15/15, 7:12 AM 1,178 views

I want to load enumeration value from my model to selection field without storing it to the database.i know that i can specify the list of values in the selection field but this way is not working with domain filter.I want the selection field to be filtered based on some condition?

Michael Telahun
On 10/16/15, 2:25 AM

Instead of listing the values in the selection field you can supply them from a function. The function will return a list of values:

def get_my_list(self):
do something...
    return [('a', 'A'),('b', 'B')]
my_list = fields.Selection(selection=get_my_list)

However, if you really need to set a domain on this field using a selection might not be the best option. I don't know your use-case so I can't comment on it, except to say that filtering a selection field seems sub-optimal to me.

Thanks Michale the thing i want is to limit the enum values based on some business constraints and i did it using a model with many2one field but with this thing i have to store the values in a database may be if it is possible to get values from model without storing it in database.

Binyam Assefa
on 10/16/15, 3:48 AM



| 4 4 6
Hyderabad, India

On 10/16/15, 1:52 AM


Your query is not clear, but as far as i got, you want to make selection field work as a many2one field.

For that i would suggest you to go in reverse manner, make many2one field look as a selection field.

You can take a many2one field, and simply add widget="selection" in its xml part.

hope it works for you..!    

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: 10/15/15, 7:12 AM
Seen: 1178 times
Last updated: 10/11/17, 4:28 AM