[IMP] ir_qweb: add a class QWebException and raise a better exception message

bzr revid: chm@openerp.com-20131018095913-7ut45k9r9c1qp2wf
This commit is contained in:
Christophe Matthieu
2013-10-18 11:59:13 +02:00
parent 0ed91c4b29
commit 4c1076420c
+9 -1
View File
@@ -44,6 +44,9 @@ BUILTINS = {
'relativedelta': lambda *a, **kw : dateutil.relativedelta.relativedelta(*a, **kw),
}
class QWebException(Exception):
pass
## We use a jinja2 sandboxed environment to render qWeb templates.
#from openerp.tools.safe_eval import safe_eval as eval
#from jinja2.sandbox import SandboxedEnvironment
@@ -290,7 +293,12 @@ class QWeb(orm.AbstractModel):
else:
g_inner = []
for n in e.childNodes:
g_inner.append(self.render_node(n, v))
try:
g_inner.append(self.render_node(n, v))
except QWebException, err:
raise err
except Exception, err:
raise QWebException("%s\n\nNode:\n%s" % (err, e.toxml()))
name = str(e.nodeName)
inner = "".join(g_inner)
trim = t_att.get("trim", 0)