Использование типа _doc сasticsearch-dsl-py - PullRequest
0 голосов
/ 20 февраля 2019

Тип документа для моего индекса в Elasticsearch 6 - _doc, , как рекомендуется .Однако уasticsearch-dsl-py тип документа по умолчанию doc (отсутствует подчеркивание). Это известная, не устраняемая проблема.

У меня есть тип документа, который, я полагаю, я определил, как описано в документации:

class MyDoc(Document):
    class Meta:
        doc_type = "_doc"

    class Index:
        name = "myindex"
        doc_type = "_doc"

Документы для Index указывают:

doc_type

имя _type в эластичном поиске.Обратите внимание, что вы должны определить это, а также doc_type в классе Meta, чтобы он вступил в силу.

Это похоже на работу для get, но при использовании поиска попадания не возвращаются как MyDoc;они возвращаются как Hit:

doc = MyDoc.get(id=id)  # doc is a MyDoc

response = MyDoc.search().query(...).execute() # MyDoc results are not deserialized

MyDoc.Index.doc_type возвращает '_doc', как и ожидалось, но MyDoc._index._get_doc_type() возвращает вместо 'doc'.

Как настроить подклассы Document так, чтобыу них есть рекомендуемый _doc тип документа?

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