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

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

 

الصورة الرمزية
إهمال

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

الكاتب

nope that is not not the question or the problem!

المنشورات ذات الصلة الردود أدوات العرض النشاط
1
يونيو 22
5612
0
يناير 24
169
1
سبتمبر 23
1830
1
ديسمبر 22
3356
2
مارس 21
4752