django -asticsearch-dsl-drf: TypeError: search () получил неожиданный аргумент ключевого слова 'doc_type' - PullRequest
0 голосов
/ 29 мая 2019

Я создаю API django с Elastic search, используя следующие библиотеки:

  • Джанго-отдых-основа
  • Джанго-elasticsearch-DSL
  • Джанго-elasticsearch-DSL-ФПИ

Когда вызывается API, библиотека django -asticsearch-dsl-drf выдает ошибку:

search () получил неожиданный аргумент ключевого слова 'doc_type'

Вот мой код:

serializers.py

class TestSerializer(DocumentSerializer):
    class Meta(object):
        document = TestDocument
        fields = ("id", "name")

api.py

class TestDocumentViewSet(DocumentViewSet):
 document = TestDocument
 serializer_class = TestSerializer
 lookup_field = 'id'
 filter_backends = [
    CompoundSearchFilterBackend,
 ]
 multi_match_search_fields  = ('id', 'name')
 filter_fields = {
     'id': 'id',
     'name': 'name',
 }
 ordering_fields = {
     'id': 'id',
     'name': 'name',
 }
 ordering = ('id', 'name')

Может кто-нибудь помочь мне с этим?

Ответы [ 2 ]

0 голосов
/ 21 июня 2019

Вчера я столкнулся с той же проблемой. Вам нужно проверить версиюasticsearch или Вы можете напрямую загрузить версию с помощью этой команды - sudo pip installasticsearch == версия (например, 6.3.1) Вы можете проверить эластичную версию с помощью этой команды - pip freeze

0 голосов
/ 17 июня 2019

проверить версию эластичного поиска. надеюсь, использование совместимых версий должно решить эту проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...