Как установить ignore_malformed на уровне индекса при создании индекса через оболочку Python ElasticSearch DSL?

Согласно docs, этого должно быть достаточно :

"settings": {
    "index.mapping.ignore_malformed": true 
  }

Но как я могу добиться этого в оболочке Python? Мой текущий код выглядит так:

from elasticsearch_dsl import Index

index = Index('my_index', my_conn)
index.settings(
     number_of_shards=ES_NUMBER_OF_SHARDS,
     number_of_replicas=ES_NUMBER_OF_REPLICAS
)
index.create()

person Montenegrodr    schedule 19.04.2017    source источник


Ответы (1)


Удивительно,

    index.settings(
        index={'mapping':{'ignore_malformed':True}}
    )

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

person Montenegrodr    schedule 19.04.2017
comment
Да, index.settings(**{'index.mapping.ignore_malformed': true}) тоже должен работать нормально. - person Honza Král; 21.04.2017