Nhomar Hernandez (Vauxoo) has proposed merging
lp:~vauxoo/openobject-server/trunk-lp1077794 into lp:openobject-server.
Requested reviews:
Raphaƫl Valyi - http://www.akretion.com (rvalyi)
OpenERP R&D Team (openerp-dev)
Olivier Dony (OpenERP) (odo-openerp): approve
Related bugs:
Bug #1077794 in OpenERP Server: "[trunk] Incorrect message when you define
incorrectly a view"
https://bugs.launchpad.net/openobject-server/+bug/1077794
For more details, see:
https://code.launchpad.net/~vauxoo/openobject-server/trunk-lp1077794/+merge/133853
One of the most difficult parts to explain when we give CTP trainings, is how
debug errors in views, understand XML is difficult by itself, if we can from
time to time put better descriptive errors in this part, framework will be most
powerful.
In this time we just improve the message to show when an exception related to
define for error an incorrect name of model in a view.
Before:
AttributeError: 'NoneType' object has no attribute 'fields_view_get'
Now:
2012-11-12 04:48:49,803 21556 ERROR cms openerp.addons.base.ir.ir_ui_view: Your
view definition is wrong, model = 'cms' defined on view = 'cms.search' doesn't
exist
Better explicit like Zen of python indicate ;-).
Thanks friends.
--
https://code.launchpad.net/~vauxoo/openobject-server/trunk-lp1077794/+merge/133853
Your team OpenERP R&D Team is requested to review the proposed merge of
lp:~vauxoo/openobject-server/trunk-lp1077794 into lp:openobject-server.
=== modified file 'openerp/addons/base/ir/ir_ui_view.py'
--- openerp/addons/base/ir/ir_ui_view.py 2012-11-02 09:47:05 +0000
+++ openerp/addons/base/ir/ir_ui_view.py 2012-11-12 05:05:22 +0000
@@ -121,8 +121,10 @@
if no error occurred, else False.
"""
try:
- fvg = self.pool.get(view.model).fields_view_get(cr, uid, view_id=view.id, view_type=view.type, context=context)
- return fvg['arch']
+ fvg = self.pool.get(view.model) and self.pool.get(view.model).fields_view_get(cr, uid, view_id=view.id, view_type=view.type, context=context)
+ if not fvg:
+ _logger.exception("Your view definition is wrong, model = '%s' defined on view = '%s' doesn't exist " % (view.model,view.name) )
+ return fvg and fvg['arch'] or False
except:
_logger.exception("Can't render view %s for model: %s", view.xml_id, view.model)
return False
=== modified file 'openerp/tools/misc.py'
--- openerp/tools/misc.py 2012-10-24 16:15:27 +0000
+++ openerp/tools/misc.py 2012-11-12 05:05:22 +0000
@@ -141,9 +141,11 @@
# Is it below 'addons_path' or 'root_path'?
name = os.path.normcase(os.path.normpath(name))
for root in adps + [rtp]:
- if name.startswith(root):
+ abspathmodule = os.path.split(name)[0]
+ abspath = os.path.split(abspathmodule)[0]
+ if os.path.samefile(abspath,root):
base = root.rstrip(os.sep)
- name = name[len(base) + 1:]
+ name = os.path.relpath(name,abspath)
break
else:
# It is outside the OpenERP root: skip zipfile lookup.
@@ -218,7 +220,7 @@
# Not found
if name.endswith('.rml'):
raise IOError('Report %r doesn\'t exist or deleted' % basename)
- raise IOError('File not found: %s' % basename)
+ raise IOError('File not found: %s' % name)
#----------------------------------------------------------
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp