From 346b9c2102a1157f430e5be70edffc33b6a30a87 Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Wed, 14 Aug 2013 17:10:18 +0200 Subject: [PATCH] [IMP] qweb: catch orm,osv exception and return it bzr revid: chm@openerp.com-20130814151018-i5m97i14cu71hisd --- openerp/tools/qweb.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/openerp/tools/qweb.py b/openerp/tools/qweb.py index fab0cf14ac0..02c088f622d 100644 --- a/openerp/tools/qweb.py +++ b/openerp/tools/qweb.py @@ -8,6 +8,7 @@ import types import xml # FIXME use lxml import xml.dom.minidom import traceback +from openerp.osv import osv, orm _logger = logging.getLogger(__name__) @@ -111,6 +112,8 @@ class QWebXml(object): def eval(self, expr, v): try: return eval(expr, None, v) + except (osv.except_osv, orm.except_orm), err: + raise orm.except_orm("QWeb Error", "Invalid expression %r while rendering template '%s'.\n\n%s" % (expr, v.get('__template__'), err[1])) except Exception: raise SyntaxError("QWeb: invalid expression %r while rendering template '%s'.\n\n%s" % (expr, v.get('__template__'), traceback.format_exc()))