web/views/tableview.py
branchstable
changeset 6104 a57db3faa913
parent 5997 2d15ddbfa2d8
child 6240 fd0cbb801007
equal deleted inserted replaced
6103:072f23f6bf83 6104:a57db3faa913
   265         #     first characters of a string)
   265         #     first characters of a string)
   266         val = self.cw_rset[row][col]
   266         val = self.cw_rset[row][col]
   267         if val is None:
   267         if val is None:
   268             return u''
   268             return u''
   269         etype = self.cw_rset.description[row][col]
   269         etype = self.cw_rset.description[row][col]
       
   270         if etype is None:
       
   271             return u''
   270         if self._cw.vreg.schema.eschema(etype).final:
   272         if self._cw.vreg.schema.eschema(etype).final:
   271             entity, rtype = self.cw_rset.related_entity(row, col)
   273             entity, rtype = self.cw_rset.related_entity(row, col)
   272             if entity is None:
   274             if entity is None:
   273                 return val # remove_html_tags() ?
   275                 return val # remove_html_tags() ?
   274             return entity.sortvalue(rtype)
   276             return entity.sortvalue(rtype)
   290         """
   292         """
   291         :param row, col: indexes locating the cell value in view's result set
   293         :param row, col: indexes locating the cell value in view's result set
   292         :param cellvid: cell view (defaults to 'outofcontext')
   294         :param cellvid: cell view (defaults to 'outofcontext')
   293         """
   295         """
   294         etype, val = self.cw_rset.description[row][col], self.cw_rset[row][col]
   296         etype, val = self.cw_rset.description[row][col], self.cw_rset[row][col]
   295         if val is not None and not self._cw.vreg.schema.eschema(etype).final:
   297         if val is not None and etype is not None and not self._cw.vreg.schema.eschema(etype).final:
   296             self.wview(cellvid or 'outofcontext', self.cw_rset, row=row, col=col)
   298             self.wview(cellvid or 'outofcontext', self.cw_rset, row=row, col=col)
   297         elif val is None:
   299         elif val is None:
   298             # This is usually caused by a left outer join and in that case,
   300             # This is usually caused by a left outer join and in that case,
   299             # regular views will most certainly fail if they don't have
   301             # regular views will most certainly fail if they don't have
   300             # a real eid
   302             # a real eid