def make_error_response(self, err, request=None): """ Create error response from HTTP error. """ handler = self.error_handler.get(err.status) status = int(err.status) if not handler: reason = HTTP_STATUS.get(status) if not reason: status = 404 # reponse 404 while not reason find. reason = HTTP_STATUS[status] body = ERROR_TEMPLETE.format(status=status, reason=reason, message=err.message if self.debug else '') response = Response(body) else: if get_param_length(handler) == 1: response = handler(request) else: response = handler() return self.make_response(response, status)