simplify method to get res_id from xml_id

bzr revid: rco@openerp.com-20110330074331-f2bcmmj8bi3aai2i
This commit is contained in:
Raphael Collet 2011-03-30 09:43:31 +02:00
parent 4153aecb1a
commit c51d08055d
1 changed files with 6 additions and 8 deletions

View File

@ -140,7 +140,7 @@ class portal(osv.osv):
# create a menuitem under 'portal.portal_menu_tree'
item_data = {
'name': portal_name,
'parent_id': self._get_res_id(cr, uid, 'portal', 'portal_menu_tree'),
'parent_id': self._res_xml_id(cr, uid, 'portal', 'portal_menu_tree'),
}
item_id = self.pool.get('ir.ui.menu').create(cr, uid, item_data, context)
@ -151,7 +151,7 @@ class portal(osv.osv):
'usage': 'menu',
'res_model': 'ir.ui.menu',
'view_type': 'tree',
'view_id': self._get_res_id(cr, uid, 'base', 'view_menu'),
'view_id': self._res_xml_id(cr, uid, 'base', 'view_menu'),
'domain': [('parent_id', '=', item_id)],
}
action_id = self.pool.get('ir.actions.act_window').create(cr, uid, action_data, context)
@ -159,13 +159,11 @@ class portal(osv.osv):
# set the portal menu_id to action_id
return self.write(cr, uid, ids, {'menu_id': action_id}, context)
def _get_res_id(self, cr, uid, module, xml_id):
def _res_xml_id(self, cr, uid, module, xml_id):
""" return the resource id associated to the given xml_id """
ir_model_data_obj = self.pool.get('ir.model.data')
record_id = ir_model_data_obj._get_id(cr, uid, module, xml_id)
record_data = ir_model_data_obj.read(cr, uid, [record_id], ['res_id'])
assert (len(record_data) == 1) and ('res_id' in record_data[0])
return record_data[0]['res_id']
data_obj = self.pool.get('ir.model.data')
data_id = data_obj._get_id(cr, uid, module, xml_id)
return data_obj.browse(cr, uid, data_id).res_id
portal()