Paginate приводит к тому, что Django использует API-интерфейс, разбитый на страницы? - PullRequest
0 голосов
/ 14 мая 2019

Я использую функцию поиска API OMDB.

Для каждого поиска одновременно возвращается не более 10 результатов с необязательным параметром страницы.

У меня есть форма поиска Django для получения результатов поиска из API OMDB. Каков наилучший способ разбить результаты на страницы с помощью API? Я хотел бы иметь кнопку, которая при нажатии добавит &page= к текущему URL и снова отправит форму. Есть ли у Джанго-й способ сделать это?

Я думал об использовании другой формы для передачи страницы в качестве параметра, но использование нескольких форм для одного поиска кажется чрезмерным. Я также подумал об использовании другого поля в форме поиска, page, чтобы запросить следующую страницу, но я не уверен, как использовать это в качестве кнопки.

1 Ответ

0 голосов
/ 14 мая 2019

Я смог сделать это, используя request.GET.urlencode, как показано ниже

<a href="{% url 'search_movie' %}?{{ request.GET.urlencode }}&page={{ page|add:'-1'}}""> <- </a>

<a href="{% url 'search_movie' %}?{{ request.GET.urlencode }}&page={{ page|add:'1'}}""> -> </a>

Этот способ работает, но он не выглядит очень Django-y.Возможно, есть лучший способ сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...