def execute(self, ignore_cache=False):
    '\n        Execute the search and return an instance of ``Response`` wrapping all\n        the data.\n\n        :arg ignore_cache: if set to ``True``, consecutive calls will hit\n            ES, while cached result will be ignored. Defaults to `False`\n        '
    if (ignore_cache or (not hasattr(self, '_response'))):
        es = get_connection(self._using)
        self._response = self._response_class(self, es.search(index=self._index, body=self.to_dict(), **self._params))
    return self._response
Execute the search and return an instance of ``Response`` wrapping all
the data.

:arg ignore_cache: if set to ``True``, consecutive calls will hit
    ES, while cached result will be ignored. Defaults to `False`
def execute(self, ignore_cache=False):
    '\n        Execute the search and return an instance of ``Response`` wrapping all\n        the data.\n\n        :arg ignore_cache: if set to ``True``, consecutive calls will hit\n            ES, while cached result will be ignored. Defaults to `False`\n        '
    if (ignore_cache or (not hasattr(self, '_response'))):
        es = get_connection(self._using)
        self._response = self._response_class(self, es.search(index=self._index, body=self.to_dict(), **self._params))
    return self._response