You have been requested to review the proposed merge of 
lp:~vauxoo/openobject-server/trunk-lp1077794 into lp:openobject-server.

For more details, see:
https://code.launchpad.net/~vauxoo/openobject-server/trunk-lp1077794/+merge/133856

Hello.

When we give CTP Technical Trainings, one of thing most difficult to explain to 
trainees is how debug error on views, one very common error is put the name 
incorrectly related to the model, i mean:

you define a model:

my.model

and in view you put 

my.modell

For example, when traceback on server appear:

BEFORE:

2012-11-12 04:27:27,241 20775 ERROR cms openerp.addons.base.ir.ir_ui_view: 
Can't render view for model: cms
Traceback: 

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 

With only the traceback showing you the view itself.

I hope you approve this MP, it can help a lot in programming time...

Thanks.

-- 
https://code.launchpad.net/~vauxoo/openobject-server/trunk-lp1077794/+merge/133856
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:22:21 +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

_______________________________________________
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

Reply via email to