Odoo 8-计算字段不使用self.env也不搜索

时间:2019-05-02 19:45:45

标签: python odoo

我的模型中有一个方法,当我通过按钮调用该方法时,它可以完全正常工作,但是,只要它由同一模型中的计算字段触发,由于我不知道的原因,它就无法执行其中的所有代码不知道即使发生这种情况,如果我再次通过按钮调用该方法,它也不会出现问题。我已经尝试过搜索该问题,但是还没有碰运气。这是我的代码中有问题的部分。

{{1}}

变量“ registros”从那里触发时,不会从“总计”的计算字段中获取任何字段。它只是将所有字段设置为0,并且不执行其他任何操作。有人知道我在这里做错了吗?

1 个答案:

答案 0 :(得分:0)

我想知道为什么它甚至可以正常工作,因为您在self装饰方法中使用了api.multi 7次。这些按钮可以很好地使用它,因为它总是以单例形式调用该方法。但是计算方法可以一次调用具有多个记录的方法。

因此将方法重写为多记录方法。使用修饰符api.one应该足够了,但是该按钮可能不再适用。

另一种解决方案是在方法for record in self:的开头实施另一个foreach循环,然后再使用record而不是self