如何删除' match_all'来自以下查询:
children()
答案 0 :(得分:1)
此处 match_all 查询是可选的,它是已过滤查询的一部分:
{
'query': {
'filtered': {
'filter': {
'term': {
'status': 'Free'
}
},
'query': {
'match_all': {}
}
}
}
}
根据规范您可以将其删除, match_all 是默认值: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-filtered-query.html#_filtering_without_a_query
在python中从字典中删除键的方法是 pop 方法:
d = s.to_dict()
d['query']['filtered'].pop('query')
在发送查询之前,您不必删除密钥,服务器将忽略它。