From f4f3d6fa153bc3bb446cf841fc3844614f5103dc Mon Sep 17 00:00:00 2001 From: "Quentin (OpenERP)" Date: Wed, 10 Oct 2012 12:42:20 +0200 Subject: [PATCH] [REF] code review by odo bzr revid: qdp-launchpad@openerp.com-20121010104220-nqi6c12ua7tnaejt --- openerp/osv/orm.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/openerp/osv/orm.py b/openerp/osv/orm.py index a6d192240a2..4f717e69dad 100644 --- a/openerp/osv/orm.py +++ b/openerp/osv/orm.py @@ -1733,11 +1733,13 @@ class BaseModel(object): field = model_fields.get(node.get('name')) if field: transfer_field_to_modifiers(field, modifiers) + #evaluate the options as python code, but send it as json to the client if node.get('options'): try: node.set('options', simplejson.dumps(literal_eval(node.get('options')))) - except Exception, msg: - raise except_orm('Invalide Python code in %s'%(node.get('options')), msg[0]) + except Exception, e: + _logger.exception('Invalid `options“ attribute, should be a valid python expression: %r', node.get('options')) + raise except_orm('Invalid options', 'Invalid options: %r %s' % (node.get('options'), e)) elif node.tag in ('form', 'tree'): result = self.view_header_get(cr, user, False, node.tag, context)