feat: 新增 search

This commit is contained in:
han0
2023-02-23 16:19:53 +08:00
parent 7ac1560c15
commit 3deb269adc
2 changed files with 31 additions and 0 deletions

View File

31
nc_http/core/search/es.py Normal file
View File

@@ -0,0 +1,31 @@
class ElasticBase:
index = None # 索引名称
query = {} # dsl 查询参数
es = None # es 实例
@classmethod
def search(cls, query=None, **params):
query = query or cls.query.copy()
for param in params:
print(param) # 根据参数构建查询 dsl
return query
@classmethod
def get_list(cls, query, paging=None):
params = {}
if paging:
params['size'] = paging['limit']
params['from'] = (paging['page'] - 1) * paging['limit']
result = cls.es.search(index=cls.index, body=query, params=params)
data = []
for row in result['hits']['hits']:
source = row['_source']
source['_score'] = row['_score']
source['_sort'] = row.get('sort')
data.append(source)
paging['total'] = result['hits']['total']['value']
return data, paging