Как искать во всех элементах категории (Селектор) - PullRequest
0 голосов
/ 23 марта 2019

мой сайт имеет функцию поиска и использует эластичный поиск, но в настоящее время я могу выполнять поиск только по определенной категории, и я не знаю, как заставить это работать для всех существующих категорийных элементов.Моя цель - установить селектор по умолчанию на «Все», чтобы все категории находились в поиске.

urls.py

url(r'^search/$', app_views.search_elastic, name='search'),

views.py

def search_elastic(request):
    qs = request.GET.get('qs')
    page = request.GET.get('page')
    if qs:
        post_a = Post_A_Document.search().query("multi_match", query=qs, fields=["title", "content", "tag"]).to_queryset()
        post_b = Post_B_MultipleDocument.search().query("multi_match", query=qs, fields=["title", "content", "tag"]).to_queryset()
        post_c = Post_C_Document.search().query("multi_match", query=qs,fields=["title", "content","tag"]).to_queryset()
        qs = list(
            sorted(
                chain(post_a, post_b, post_c),
                key=lambda objects: objects.pk
            ))
    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, 'app/search/search_results_elastic.html', {'object_list': qs})

base.html:

<div class="search">
        <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-outline-dark" type="submit">
                    <i class="fa fa-search"></i>
                </button>
            </div>
        </form>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...