Я хочу разбить на страницы некоторые результаты, полученные с помощью elasticsearch-dsl (версия 7.8.0), точно так же, как переполнение стека делает с количеством вопросов на странице в его списке вопросов (см. { ссылка } . Итак, я ожидаю, что пользователь введет количество «вопросов» на странице, которое он хочет.
Если это важно, я также использую djangoelasticsearch-dsl.
Вот мой documents.py
from django_elasticsearch_dsl import Document
from django_elasticsearch_dsl.registries import registry
from polls.models import Question
@registry.register_document
class QuestionDocument(Document):
class Index:
name = 'questions'
settings = {
'number_of_shards: 1,
'number_of_replicas: 0,
}
class Django:
model = Question
fields = ['question_text', 'pub_date']
Вот мой views.py
from django.shortcuts import render
# search is the name of the app
from search.documents import QuestionDocument
def search(request):
q = request.GET.get('q', None)
if q:
questions = QuestionDocument.search().query("match", question_text=q)
else:
questions = ''
return render(request, 'search/search.html', {'questions': questions})
И мой search. html шаблон:
<form method="get">
<input id="q" name="q" type="text" placeholder="your search...">
</form>
{% for question in questions %}
{{ question.question_text }}
{{ question.pub_date }}
<br>
{% endfor %}
Пожалуйста, как мне продолжить?