请原谅我,如果这是非常基本的,但我有Python 2.7和Elasticsearch 2.1.1,我只是试图删除索引使用
es.delete(index='researchtest', doc_type='test')
但这给了我
return func(*args, params=params, **kwargs)
TypeError: delete() takes at least 4 arguments (4 given)
我也试过了
es.delete_by_query(index='researchtest', doc_type='test',body='{"query":{"match_all":{}}}')
但我明白了
AttributeError: 'Elasticsearch' object has no attribute 'delete_by_query'
知道为什么吗?对于python,api是否改为2.1.1?
2 回答
如果您有一个文档对象(模型)并且您正在使用elasticsearch-dsl,特别是使用Python-3.X,您可以直接调用模型的
_index
属性的delete
方法 .同样如stated in documentation:
从文档中,使用此表示法: