0
我很困惑,如何在django restframework中使用elasticsearch。 請幫助我。什麼是在Django中使用elasticsearch的最佳方法Restframework
我很困惑,如何在django restframework中使用elasticsearch。 請幫助我。什麼是在Django中使用elasticsearch的最佳方法Restframework
在刺破我的腦袋並在網絡上進行研究之後,我創建了這個非常簡單的解決方案。
from elasticsearch import Elasticsearch, RequestsHttpConnection
import datetime
import socket
from requests_aws4auth import AWS4Auth
class EsHelper():
conn = ""
index = "index"
HOSTNAME = socket.gethostname()
def __init__(self):
self.conn = Elasticsearch(['localhost:9200'])
exist = self.conn.indices.exists(self.index)
if not(exist):
self.conn.indices.create('index', body={
'settings': {
'analysis': {
'filter': {
'autocomplete_filter': {
'type': 'edge_ngram',
'min_gram': 1,
'max_gram': 20
}
},
'analyzer': {
'autocomplete': {
'type': 'custom',
'tokenizer': 'standard',
'filter': [
'lowercase',
'autocomplete_filter'
]
}
}
},
'index': {
'number_of_shards': '5',
'number_of_replicas': '1'
}
},
})
def EsAddIndex(self, index, type, id, body):
self.conn.index(index=index, doc_type=type, id=id, body=body)
def EsUpdateIndex(self, index, type, id, body):
self.conn.update(index=index, doc_type=type, id=id, body=body)
def EsSearch(self, index, page, size, searchTerm):
body = {
'query': {
'match': searchTerm
},
'sort': {
'created': {
'order': 'desc'
}
},
'filter': {
'term': {
'super_verification': 'verified'
}
}
}
res = self.conn.search(index=index, body=body)
output = []
for doc in res['hits']['hits']:
output.append(doc['_source'])
return output
顯示您迄今爲止所做的事情,可能有人可以幫助您! –
我只想知道如何將elasticsearch與django集成。沒有我在這裏得到適當的文檔 –
對不起,但在谷歌的第一個請求給了我的教程鏈接如何使用Elasticsearch與Django –