Elasticsearch DSL запросы не находят результатов

Я работаю над настройкой Elasticsearch DSL для проекта Django.

Когда я использую Elasticsearch DSL для настройки индекса и doc_type, все работает. Я использую sense(chrome plugin) и cURL, чтобы дважды проверить, добавлено ли отображение index и doc_type, добавлены ли объекты, которые я хочу сохранить, и это так.

Проблема возникает, когда я использую определения API Elasticsearch DSL для отправки запросов - никаких результатов не найдено.

def experimental_test():
        connections.create_connection(hosts=['localhost:9200'])

        tests_index = Index('tests_index')
        tests_index.settings(
            number_of_shards=1,
            number_of_replicas=0
        )
        tests_index.doc_type(Test)
        tests_index.delete(ignore=404)
        tests_index.create()

        Test.init()
        test = Test(title='Foo')
        test.save()

        s = Search()
        s = s.doc_type(Test)
        s = s.query('match', title='Foo')
        print s.to_dict()
        response = s.execute()

Вот что говорит отладка, отправляется в Elasticsearch (фактический запрос):

[INFO 2015-06-29 15: 50: 24,705asticsearch.trace] curl -XGET ' http://localhost:9200/_all/test/_search?pretty' -d '{"query": {"match": { "title": "Foo"}}} '

Но никаких результатов не найдено.

Если я копирую этот запрос в Sense или терминал с помощью cURL, он находит его.

У кого-нибудь еще есть эта конкретная проблема?

Спасибо за любые ответы, которые могут привести меня к пониманию, в чем проблема, или что можно сделать по-другому.

PS: документы по API не очень полезны.

0 ответов

Другие вопросы по тегам