def getSubCols(self,sortfield="weight",subColTypes=['ECHO_group','ECHO_collection','ECHO_externalLink','ECHO_resource']): subColTypes=['ECHO_group','ECHO_collection','ECHO_externalLink','ECHO_resource'] ids=[] for entry in self.__dict__.keys(): object=getattr(self,entry) try: if object.meta_type in subColTypes: ids.append(object) except: """nothing""" try: sortfield=self.sortfield except: """nothing""" tmplist=[] for x in ids: if hasattr(x,sortfield): try: x=int(x) except: """nothing""" tmp=getattr(x,sortfield) else: tmp=10000000 tmplist.append((tmp,x)) tmplist.sort() return [x for (key,x) in tmplist]