Ленивая загрузка пагинации в django

У меня есть функция, которая делает 100 запросов к API, однако есть ограничение по скорости - что-то около 15 запросов в секунду. Поэтому я попытался использовать Django EL(Endless) Pagination для того, чтобы получить что-то вроде пагинации в стиле Twitter. Эффект, который я хотел получить, заключался в том, что по умолчанию будут показаны только первые десять элементов, а когда пользователь прокрутит страницу до конца, будут загружены следующие десять элементов. Однако в настоящее время пагинация только пагинация шаблона, а не представления, в котором запрашиваются данные. Кажется, что процесс пагинации выглядит следующим образом:

  1. Call the function to send 100 queries.
  2. Display first 10 elements.
  3. When user reach the end, call again the function to send 100 queries.
  4. Show another 10 elements.

По сути, каждый раз, когда запрашивается следующая страница, вызывается функция view.

Функция просмотра выглядит примерно так:

def user_info(request, user_account, template="entry_list.html"):
    
    # Function that makes the 100 requests
    entry_list = helpers.get_summary_list(user_account)

    context = {
        "entry_list": entry_list,
    }

    if request.is_ajax():
        template = "entry_list_page.html"

    return render(request, template, context)

Затем в шаблоне:

{% load el_pagination_tags %}
{% lazy_paginate entries %}
{% for entry in entries %}
    {# your code to show the entry #}
{% endfor %}
{% show_more %}
Вернуться на верх