Ir al contenido
Menú
Se marcó esta pregunta
2506 Vistas

My problem is I have model A with list of model B. In model B I've got a field with a compute method. In that method I have to use data that is stored in model A M2M field. When the method is triggered by api.depends it works. But when I save model A record the model B compute method is triggered and the M2M field is empty even if there are values in it.

But I need those values, what I'm doing wrong?


ModelA
------
partner_ids = field.Many2many()
line_ids = fields.One2many(ModelB, model_a_id)

ModelB
------
model_a_id = fields.Many2one(ModelA)
calculated_field = field.Float(compute='_get_value', store=True)


@api.depends(some fields)

def _get_value(self):
for rec in self:
# some computations
if rec.model_a_id.partner_ids:
# do something

 

Avatar
Descartar

If you want the computed field to be calculated if the value in modelA.M2M field changes then in api.depends you need to add the M2M field as below:

@api.depends("model_a_id.partner_ids")

Autor

nope that is not not the question or the problem!

Publicaciones relacionadas Respuestas Vistas Actividad
1
jun 22
5044
0
ene 24
169
1
sept 23
1467
1
dic 22
3037
2
mar 21
4316