同一个res.model openerp的多个表单视图

时间:2014-03-15 05:13:16

标签: openerp

我正在开发一个openerp模块,我想创建相同数据库对象的多个表单视图(res_model),每个表单都显示具有特定布局的某些字段。

当我点击菜单项时,我需要显示其中一个,当我使用return语句单击表单上的按钮时,将显示另一个:

return {
        'name': 'convert',
        'view_type': 'form',
        'view_mode': 'tree,form',
        'res_model': 'orders',
        'views': [(True, 'form')],
        'view_id': 'convert_req_to_order',
        'type': 'ir.actions.act_window',
        'domain': "[('order_type','=','0')]",
        }

但它总是显示一种形式。

是否可以创建同一数据库对象的多个表单视图或多个树视图?

1 个答案:

答案 0 :(得分:0)

是的,当然可能。尝试以下列方式返回:

mod_obj = self.pool.get('ir.model.data')
form_view_ref = mod_obj.get_object_reference(cr, uid, '_your_module_name_', 'convert_req_to_order')

return {
        'name': 'convert',
        'view_type': 'form',
        'view_mode': 'form',
        'view_id': [form_view_ref and form_view_ref[1] or False],
        'res_model': 'orders',
        'context': context, # optional
        'type': 'ir.actions.act_window',
        'nodestroy': True,
        'target': 'current', # for current window, 'new' for popup
        #'res_id': actual_instance.id, # id for record, else new record
        }

请勿忘记替换_your_module_name _' ; - )