summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabien Pinckaers <fp@tinyerp.com>2012-06-10 12:43:38 +0200
committerFabien Pinckaers <fp@tinyerp.com>2012-06-10 12:43:38 +0200
commit7d89afe7bc356537f2fdddb1007b78e8fad78bf5 (patch)
tree511e2377a54b08fc342a79672193117015ed76a4
parentb1ab584317424162dba6575d70ecb993a3311859 (diff)
fix
bzr revid: fp@tinyerp.com-20120610104338-spr8hfo74z2vy0nj
-rw-r--r--openerp/addons/base/ir/ir_ui_view.py23
1 files changed, 20 insertions, 3 deletions
diff --git a/openerp/addons/base/ir/ir_ui_view.py b/openerp/addons/base/ir/ir_ui_view.py
index a7614ab496c..d399029886b 100644
--- a/openerp/addons/base/ir/ir_ui_view.py
+++ b/openerp/addons/base/ir/ir_ui_view.py
@@ -124,9 +124,26 @@ class view(osv.osv):
:rtype: list of tuples
:return: [(view_arch,view_id), ...]
"""
- cr.execute("""SELECT arch, id FROM ir_ui_view WHERE inherit_id=%s AND model=%s
- ORDER BY priority""",
- (view_id, model))
+ if self.pool._init:
+ cr.execute("""SELECT
+ arch, id
+ FROM
+ ir_ui_view
+ WHERE
+ inherit_id=%s AND model=%s
+ ORDER BY priority""", (view_id, model))
+ else:
+ cr.execute("""SELECT
+ v.arch, v.id
+ FROM
+ ir_ui_view v
+ LEFT JOIN
+ ir_model_data d ON (d.res_id=v.id AND d.model='ir.ui.view')
+ LEFT JOIN
+ ir_module_module m ON (m.state='installed' AND m.name=d.module)
+ WHERE
+ inherit_id=%s AND model=%s
+ ORDER BY priority""", (view_id, model))
return cr.fetchall()
def write(self, cr, uid, ids, vals, context=None):