Как сделать поиск с пагинацией с помощью Django

Вы можете легко понять, какую функциональность я пытаюсь добавить пагинацию

  1. Используя опцию, я хочу показать ограниченное количество данных, например, если пользователь выбирает 10 то количество данных должно отображаться 10
  2. .
  3. Далее, если пользователь вводит номер страницы 2, то он переходит на страницу номер 2
  4. .

form.html

<form class="form-inline" method="GET" action="{% url 'bookings:cancelled_bookings_list' %}">
                                     {% csrf_token %}
                                     <select class="form-control w-50" data-selected="Data" name="no_of_data">
                                      <option value="10">10</option>
                                      <option value="20">20</option>
                                      <option value="30">30</option>
                                    </select>
                                     <br>
                                     <div class="input-group">
                                         <input type="text" class="form-control w-25" placeholder="Enter Page No" name="page_no">
                                         <div class="input-group-append">
                                             <button class="btn btn-primary" type="submit" id="button-addon2">Go</button>
                                     </div>
                                     </div>
                                 </form>

views.py

page = request.GET.get('page', 1)
paginator = Paginator(bookings, PAGE_SIZE)
try:
    bookings = paginator.page(page)
except PageNotAnInteger:
    bookings = paginator.page(1)
except EmptyPage:
    bookings = paginator.page(paginator.num_pages)

if request.method == "GET":
    no_of_data = request.GET.get('no_of_data')
    page_no = request.GET.get("page_no")
    paginate_by = no_of_data
Вернуться на верх