首页 文章

如何使用API调用Odoo服务器

提问于
浏览
1

我在Odoo 10中定义了一个服务器操作 . 在视图中创建一个按钮很容易,通过使用服务器操作ID来调用该服务器操作 . 例如,如果服务器操作的ID为123:

<button name="123" type="action" string="Run Action"/>

有没有办法通过API调用此操作?我不确定如何执行此操作,因为服务器操作没有方法名称 . 这只是一个ID . 我还需要能够将上下文传递给操作 . 这可能吗?

1 回答

  • 2

    在Odoo的基本模块中,定义了模型 ir.actions.server (base / ir / ir_actions.py) . 有一个名为 run 的方法,它应该可以从XMLRPC API中调用 .

    要使用上下文,只需在调用时将其添加为名为 context 的关键字参数(kwargs),如:

    models.execute_kw(db, uid, password,
        'res.partner', 'check_access_rights',
        ['read'], {'raise_exception': False, 'context': {'test': True}})
    

    (示例从official example 'Calling Methods'扩展)

    这似乎有点神奇,但它已经完成here .

相关问题