Source code for django_elasticsearch_dsl_drf.filter_backends.search.query_backends.simple_query_string

import copy

from elasticsearch_dsl.query import Q

from .base import BaseSearchQueryBackend

__title__ = 'django_elasticsearch_dsl_drf.filter_backends.search.' \
            'query_backends.simple_query_string'
__author__ = 'Artur Barseghyan <artur.barseghyan@gmail.com>'
__copyright__ = '2017-2019 Artur Barseghyan'
__license__ = 'GPL 2.0/LGPL 2.1'
__all__ = ('SimpleQueryStringQueryBackend',)


[docs]class SimpleQueryStringQueryBackend(BaseSearchQueryBackend): """Simple query string query backend.""" query_type = 'simple_query_string'
[docs] @classmethod def get_field(cls, field, options): """Get field. :param field: :param options: :return: """ if not options: options = {} field_name = options['field'] \ if 'field' in options \ else field if 'boost' in options: return '{}^{}'.format(field_name, options['boost']) return field_name
[docs] @classmethod def get_query_options(cls, request, view, search_backend): query_options = getattr(view, 'simple_query_string_options', {}) return query_options