forked from mirrors/bookwyrm
Json serialize search results
This commit is contained in:
parent
7454fb7454
commit
d990a5effd
2 changed files with 19 additions and 6 deletions
|
@ -48,6 +48,13 @@ def search(query):
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
|
||||||
|
def local_search(query):
|
||||||
|
''' only look at local search results '''
|
||||||
|
connector = load_connector(models.Connector.objects.get(local=True))
|
||||||
|
return connector.search(query)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def first_search_result(query):
|
def first_search_result(query):
|
||||||
''' search until you find a result that fits '''
|
''' search until you find a result that fits '''
|
||||||
for connector in get_connectors():
|
for connector in get_connectors():
|
||||||
|
|
|
@ -150,13 +150,19 @@ def search(request):
|
||||||
if re.match(r'\w+@\w+.\w+', query):
|
if re.match(r'\w+@\w+.\w+', query):
|
||||||
# if something looks like a username, search with webfinger
|
# if something looks like a username, search with webfinger
|
||||||
results = [outgoing.handle_account_search(query)]
|
results = [outgoing.handle_account_search(query)]
|
||||||
template = 'user_results.html'
|
return TemplateResponse(
|
||||||
else:
|
request, 'user_results.html', {'results': results}
|
||||||
# just send the question over to book search
|
)
|
||||||
results = books_manager.search(query)
|
|
||||||
template = 'book_results.html'
|
|
||||||
|
|
||||||
return TemplateResponse(request, template, {'results': results})
|
# or just send the question over to book search
|
||||||
|
|
||||||
|
if is_api_request(request):
|
||||||
|
# only return local results via json so we don't cause a cascade
|
||||||
|
results = books_manager.local_search(query)
|
||||||
|
return JsonResponse([r.__dict__ for r in results], safe=False)
|
||||||
|
|
||||||
|
results = books_manager.search(query)
|
||||||
|
return TemplateResponse(request, 'book_results.html', {'results': results})
|
||||||
|
|
||||||
|
|
||||||
def books_page(request):
|
def books_page(request):
|
||||||
|
|
Loading…
Reference in a new issue