entity.py
changeset 6656 bea4ab297e67
parent 6499 c4123c741c66
child 6792 8834d9d91b66
equal deleted inserted replaced
6655:75112ff0511d 6656:bea4ab297e67
   631         if selected:
   631         if selected:
   632             # select V, we need it as the left most selected variable
   632             # select V, we need it as the left most selected variable
   633             # if some outer join are included to fetch inlined relations
   633             # if some outer join are included to fetch inlined relations
   634             rql = 'Any %s,%s %s' % (V, ','.join(var for attr, var in selected),
   634             rql = 'Any %s,%s %s' % (V, ','.join(var for attr, var in selected),
   635                                     ','.join(rql))
   635                                     ','.join(rql))
   636             rset = self._cw.execute(rql, {'x': self.eid}, build_descr=False)[0]
   636             try:
       
   637                 rset = self._cw.execute(rql, {'x': self.eid}, build_descr=False)[0]
       
   638             except IndexError:
       
   639                 raise Exception('unable to fetch attributes for entity with eid %s'
       
   640                                 % self.eid)
   637             # handle attributes
   641             # handle attributes
   638             for i in xrange(1, lastattr):
   642             for i in xrange(1, lastattr):
   639                 self.cw_attr_cache[str(selected[i-1][0])] = rset[i]
   643                 self.cw_attr_cache[str(selected[i-1][0])] = rset[i]
   640             # handle relations
   644             # handle relations
   641             for i in xrange(lastattr, len(rset)):
   645             for i in xrange(lastattr, len(rset)):