4

在 OpenERP 中,一个 OSV 对象可以返回一些可以打开一个新视图或激活一个动作的东西。例如,sale.order具有manual_invoice返回以下内容的方法:

    return {
        'name': _('Customer Invoices'),
        'view_type': 'form',
        'view_mode': 'form',
        'view_id': [res_id],
        'res_model': 'account.invoice',
        'context': "{'type':'out_invoice'}",
        'type': 'ir.actions.act_window',
        'nodestroy': True,
        'target': 'current',
        'res_id': inv_ids and inv_ids[0] or False,
    }

它会在同一窗口中打开发票表单视图。

我已经看到'view_id': [res_id],被更改为'views': [(id2, 'form')],和其他部分也被修改,它仍然有效。

所以我不明白这个机制是如何工作的。什么决定了返回字典中应该包含哪些值?我怎么知道哪些是强制性的,哪些不是?

非常感谢!

4

1 回答 1

5

返回的字典被解释为一个动作(ir.actions.act_window模型),例如在 XML 视图中找到的那些。该文档可在Technical Memento官方文档中找到。

于 2012-05-21T10:10:25.510 回答