تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
4 الردود
15548 أدوات العرض

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
فبراير 25
5965
1
ديسمبر 24
1494
1
نوفمبر 22
16062
3
أغسطس 22
13115
2
أغسطس 22
4562