From 4943ae54d08f607103b47d7771388f4916c4d9de Mon Sep 17 00:00:00 2001 From: Naresh Choksy Date: Mon, 10 Nov 2008 15:45:05 +0530 Subject: [PATCH] bugfix:checking inherited model==base model bzr revid: nch@tinyerp.com-20081110101505-gjtf3id71w51utak --- bin/addons/base/ir/ir_ui_view.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/bin/addons/base/ir/ir_ui_view.py b/bin/addons/base/ir/ir_ui_view.py index d10d1082709..7e7fc29459f 100644 --- a/bin/addons/base/ir/ir_ui_view.py +++ b/bin/addons/base/ir/ir_ui_view.py @@ -1,7 +1,7 @@ # -*- encoding: utf-8 -*- ############################################################################## # -# OpenERP, Open Source Management Solution +# OpenERP, Open Source Management Solution # Copyright (C) 2004-2008 Tiny SPRL (). All Rights Reserved # $Id$ # @@ -76,11 +76,18 @@ class view(osv.osv): def create(self, cr, uid, vals, context={}): if 'inherit_id' in vals: obj=self.browse(cr,uid,vals['inherit_id']) - if not obj.model==vals['model']: - raise Exception("Inherited view model [%s] and \ + child=self.pool.get(vals['model']) + error="Inherited view model [%s] and \ \n\n base view model [%s] do not match \ \n\n It should be same as base view model " \ - %(vals['model'],obj.model)) + %(vals['model'],obj.model) + try: + if obj.model==child._inherit: + pass + except: + if not obj.model==vals['model']: + raise Exception(error) + return super(view,self).create(cr, uid, vals, context={}) def read(self, cr, uid, ids, fields=None, context={}, load='_classic_read'):