Se rendre au contenu
Menu
Cette question a été signalée
2 Réponses
8512 Vues

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?

Avatar
Ignorer
Meilleure réponse

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.

Avatar
Ignorer
Auteur

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.

Meilleure réponse

Binyam,

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..!    

Avatar
Ignorer
Publications associées Réponses Vues Activité
1
mai 24
2618
4
déc. 23
22334
5
juil. 24
15696
1
nov. 22
4987
2
juil. 22
3701