Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
2 Risposte
6627 Visualizzazioni

Hi, 

This is an example:



class ModelA(models.Model):
         _name = 'model.A'

         type = fields.Boolean(string='Type')


class ModelB(models.Model):
         _name = 'model.B'

         type = fields.Selection([('1', 'One'),('2', 'Two')])

I want when i select 1 in the selection option in model B to change the default value of field 'type' in model A to true, and 2 to false

How can i do that

Thanks


Avatar
Abbandona
Risposta migliore

Check out the related fields. They are fields that obtain value based on another. The advantage is that you save coding the onchange event.

https://www.odoo.com/documentation/12.0/reference/orm.html#related-fields

Avatar
Abbandona
Risposta migliore

Hi, 

Both models should be linked. So we'll add a M2O field in model B like this: 

a_id = fields.Many2one('model.A')

Then consider adding a ochange like this: 

@api.onchange('type'):
def onchange_type(self):
if self.type == ' 1':
    self.a_id.type = True
else:
​    self.a_id.type = False

Hope this helps.

Avatar
Abbandona
Post correlati Risposte Visualizzazioni Attività
2
lug 24
2694
1
giu 24
5153
4
mar 24
3593
1
ott 23
5515
1
ott 23
10878