def read(self): response = self._response.copy() try: items = [obj.to_dict() for obj in Banner.all(self.session)] except Exception as e: self.log.exception('Unknown error.') self.session.rollback() self.request.response.status = 500 response['msg'] = str(e) else: response['success'] = True response['dataset'] = items response['dataset_length'] = len(response['dataset']) response['msg'] = self.request.translate("Banners were found.") finally: return response