通过ElasticSearch DSL python包装器创建索引时如何在索引级别设置ignore_malformed?

Mon*_*odr 4 python python-2.7 elasticsearch elasticsearch-dsl elasticsearch-py

根据docs,这应该足够了:

"settings": {
    "index.mapping.ignore_malformed": true 
  }
Run Code Online (Sandbox Code Playgroud)

但是如何在 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()
Run Code Online (Sandbox Code Playgroud)

Mon*_*odr 5

出奇,

    index.settings(
        index={'mapping':{'ignore_malformed':True}}
    )
Run Code Online (Sandbox Code Playgroud)

效果很好。我将把 Q 留在这里,因为可能有用。