Sort the search results by a certain field.

        If this method is called multiple times, the later sort fields are given lower priority,
        and will only be considered when the eariler fields have the same value.

        Arguments:
            field (str): The field to sort by, in Elasticsearch dot syntax.
            ascending (bool): Sort in ascending order? **Default**: ``True``.

        Returns:
            SearchHelper: Self

def _add_sort(self, field, ascending=True):
        """Sort the search results by a certain field.

        If this method is called multiple times, the later sort fields are given lower priority,
        and will only be considered when the eariler fields have the same value.

        Arguments:
            field (str): The field to sort by, in Elasticsearch dot syntax.
            ascending (bool): Sort in ascending order? **Default**: ``True``.

        Returns:
            SearchHelper: Self
        """
        # Fields must be strings for Elasticsearch
        field = str(field)
        # No-op on blank sort field
        if field:
            self.__query["sort"].append({
                'field_name': field,
                'order': 'asc' if ascending else 'desc'
            })
        return self