Skip to Content
Menu
This question has been flagged
4 Replies
15417 Views

for example 

x = fields.many2one(); 

and value of 'x' can be one of  'a', 'b' or 'c'; now how shall I set value of 'x' as 'b' by code?

Avatar
Discard

Hello please give some more details about what you are trying to do. Are you trying to give a default value for the many2one field.

Best Answer

Hi,

Review below links. they will helpful for you.

https://doc.odoo.com/6.0/developer/2_5_Objects_Fields_Methods/field_type/

https://odoo-development.readthedocs.io/en/latest/dev/py/fields.html#many2one


Avatar
Discard
Author

thanks for your reply

Best Answer

Hi,

Many2one relation returns records of related model. Many2one field store record id of that related model. For reference check this link​   

You can use default method to load default value in many2one field 

field = fields.Many2one('related_model', string="", default=_default_value, required=True)
@api.model
def _default_value(self):
    return self.env['related_model'].search([], limit=1)
Avatar
Discard
Author

thank you

Best Answer

The value in "x" is the record that you have selected.
It stores the 'id' of that referencing record. So directly you cannot store the "value" to that, but by setting the id of the record will set the value. It is Integer value that you can set in "x".

Avatar
Discard
Author

thanks

Related Posts Replies Views Activity
2
Feb 25
5883
1
Dec 24
1445
1
Nov 22
15949
3
Aug 22
12975
2
Aug 22
4458