跳至内容
菜单
此问题已终结
4 回复
15460 查看

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?

形象
丢弃

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.

最佳答案

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


形象
丢弃
编写者

thanks for your reply

最佳答案

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)
形象
丢弃
编写者

thank you

最佳答案

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

形象
丢弃
编写者

thanks

相关帖文 回复 查看 活动
2
2月 25
5912
1
12月 24
1463
1
11月 22
16000
3
8月 22
13039
2
8月 22
4493