如何在Odoo中再次导航回视图?

时间:2018-08-23 10:11:28

标签: odoo back odoo-11 odoo-view

我有2个关于我已通过上下文并通过方法获取上下文的屏幕。就是这样

stock_picking_obj=self.env['stock.picking']
context = dict(self._context) or {}
context.update({'is_first_picking_open':True})
stock_picking_obj.with_context(context)

当我在方法中收到上下文时。

@api.multi
def button_validate(self):
    context=dict(self._context)
    if context.get('is_first_picking_open'):
        return {'type': 'ir.actions.client', 'tag': 'history_back'}

所以基本上,我想要一次处理后回到旧屏幕。

1 个答案:

答案 0 :(得分:0)

这不是您在最新版本的Odoo中更新上下文的方式。

首先,环境存在于环境中,您可以像这样获取它: self.env.context,它将始终是字典,因此没有理由使用dict() or {}

现在,with_context函数将返回您已更改上下文的调用的记录集。示例:

stock_pickings = stock_pickings.with_context(context)

然后您可以

stock_pickings.button_validate(),您将可以使用self.env.context

获取上下文