T53161 Proof of Concept working
This commit is contained in:
@@ -51,22 +51,29 @@ class Node(es.DocType):
|
||||
analyzer=autocomplete
|
||||
)
|
||||
|
||||
user_id = es.Keyword()
|
||||
user_name = es.String(
|
||||
fielddata=True,
|
||||
analyzer=autocomplete
|
||||
)
|
||||
user = es.Object({
|
||||
'fields': {
|
||||
'id': es.Keyword(),
|
||||
'name': es.String(
|
||||
fielddata=True,
|
||||
analyzer=autocomplete)
|
||||
}
|
||||
})
|
||||
|
||||
description = es.String()
|
||||
|
||||
is_free = es.Boolean()
|
||||
|
||||
project_id = es.Keyword()
|
||||
project_name = es.String()
|
||||
project = es.Object({
|
||||
'fields': {
|
||||
'id': es.Keyword(),
|
||||
'name': es.Keyword(),
|
||||
}
|
||||
})
|
||||
|
||||
media = es.Keyword()
|
||||
|
||||
picture_url = es.Keyword()
|
||||
picture = es.Keyword()
|
||||
|
||||
tags = es.Keyword(multi=True)
|
||||
license_notes = es.String()
|
||||
@@ -92,15 +99,15 @@ def create_doc_from_node_data(node_to_index):
|
||||
|
||||
doc.node_type = node_to_index['node_type']
|
||||
doc.name = node_to_index['name']
|
||||
doc.user_id = str(node_to_index['user']['_id'])
|
||||
doc.user_name = node_to_index['user']['full_name']
|
||||
doc.project_id = str(node_to_index['project']['_id'])
|
||||
doc.project_name = node_to_index['project']['name']
|
||||
doc.user.id = str(node_to_index['user']['_id'])
|
||||
doc.user.name = node_to_index['user']['full_name']
|
||||
doc.project.id = str(node_to_index['project']['_id'])
|
||||
doc.project.name = node_to_index['project']['name']
|
||||
|
||||
if node_to_index['node_type'] == 'asset':
|
||||
doc.media = node_to_index['media']
|
||||
|
||||
doc.picture_url = node_to_index.get('picture')
|
||||
doc.picture = node_to_index.get('picture')
|
||||
|
||||
doc.tags = node_to_index.get('tags')
|
||||
doc.license_notes = node_to_index.get('license_notes')
|
||||
|
@@ -24,8 +24,10 @@ def do_search(query: str) -> dict:
|
||||
"""
|
||||
should = [
|
||||
Q('match', name=query),
|
||||
Q('match', user_name=query),
|
||||
Q('match', project_name=query),
|
||||
|
||||
{"match": {"project.name": query}},
|
||||
{"match": {"user.name": query}},
|
||||
|
||||
Q('match', description=query),
|
||||
Q('term', media=query),
|
||||
Q('term', tags=query),
|
||||
|
Reference in New Issue
Block a user