在超级调用中使用with_context会变成odoo中的无限调用

时间:2015-07-02 07:29:37

标签: openerp odoo odoo-8

在odoo上下文字典被冻结,所以没有人可以更新它, 对于那个解决方案,也可以使用with_context调用方法。

ctx = self.env.context.copy()
ctx.update({'additional_parameter' : value})
self.with_context(ctx).methodname()

但是当我们使用相同的模式来调用super方法时,结果会转变为无限调用。

ctx = self.env.context.copy()
ctx.update({'additional_parameter' : value})
super(product_product, self).with_context(ctx).create(vals)

任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:14)

我认为你应该在各自的方面尝试这样的事情:

super(product_product, self.with_context(ctx)).create(vals)