如何在elasticsearch-dsl(5.4.0)中使用搜索API中的索引
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在elasticsearch-dsl(5.4.0)中使用搜索API中的索引相关的知识,希望对你有一定的参考价值。
我正在使用elasticsearch-dsl(5.4.0)和elasticsearch(5.5.3)。我在模型层文件中使用名为Meta class的内部类定义了EsTask类,如下所示:
/task_models.朋友
class EsTask(DocType):
id = Keyword()
catagory_id = Integer()
name = Text(analyzer='ik_max_word', search_analyzer='ik_smart')
priority_level = Integer()
related_id = Keyword()
parent_id = Keyword()
creator_id = Keyword()
created_at = Date()
deleted_at = Date()
class Meta:
index = 'task_es'
doc_type = 'main'
我在控制器层文件中调用搜索API:
/task.朋友
s = EsTask.search().filter('bool', must_not=elasticsearch_dsl.Q('exists', field='deleted_at'))
如果我想确保搜索API使用我在上面的Meta Class中定义的索引,我可以使用关键字参数调用search(),如search(index ='task_es',doc_type ='main')。或者这是必然的,我可以在没有任何参数的情况下离开搜索API?
答案
您可以不加任何参数保留它,因为它会自动执行。
希望这可以帮助!
以上是关于如何在elasticsearch-dsl(5.4.0)中使用搜索API中的索引的主要内容,如果未能解决你的问题,请参考以下文章
python对于新版本elasticsearch-dsl(7.1)的使用说明
我可以将 elasticsearch-dsl 的 IpRange 子类化以供 django-elasticsearch-dsl 使用吗?