я добавил в приложение вторую модель, и теперь я также хочу выполнить поиск по полям этой модели и вернуть ее в том же виде, что и моя первая модель.
views.py
#Elasticsearch
def globalsearch_elastic(request):
qs = request.GET.get('qs')
page = request.GET.get('page')
if qs:
qs = PostDocument.search().query("multi_match", query=qs, fields=["title", "content", "tag"])
qs = qs.to_queryset()
else:
qs = ''
paginator = Paginator(qs, 10) # Show 10 results per page
try:
qs = paginator.page(page)
except PageNotAnInteger:
qs = paginator.page(1)
except EmptyPage:
qs = paginator.page(paginator.num_pages)
return render(request, 'MyProject/search/search_results_elastic.html', {'object_list':qs})
в настоящее время только PostDocument получают поиск совпадений, как мне добавить сюда второй из documents.py в этой функции?или, если быть более точным, что мне нужно изменить в этой строке для поиска нескольких документов?
qs = PostDocument.search().query("multi_match", query=qs, fields=["title", "content", "tag"])
это откуда взято "qs" (base.html):
<div class="globalsearch">
<form id="searchform" action="{% url 'search' %}" method="get" accept-charset="utf-8">
<div class="form-row align-items-center">
<input class="class-search-input-fields" id="searchbox" name="qs" required="required" type="text" placeholder="Search ..."><a>in</a>
<div class="custom-dropdown">
<a>{{ categorysearch_form.category }}</a>
</div>
<button class="btn btn-dark" type="submit">
<i class="fa fa-search"></i>
</button>
</div>
</form>
</div>
documents.py:
Заранее спасибо