Junior — Middle
108
Comment la pagination des données est-elle implémentée dans Django pour afficher une grande collection d'informations?
Réponse de l'IA
sobes.tech IA
В Django для разбивки данных на страницы используется класс Paginator из модуля django.core.paginator. Он позволяет разбить большой набор данных (например, QuerySet) на страницы фиксированного размера и удобно получать объекты для конкретной страницы.
Пример использования:
from django.core.paginator import Paginator
items = MyModel.objects.all() # большой QuerySet
paginator = Paginator(items, 10) # по 10 объектов на страницу
page_number = request.GET.get('page') # номер страницы из запроса
page_obj = paginator.get_page(page_number)
# В шаблоне можно использовать page_obj для отображения элементов и навигации
Таким образом, Paginator берет на себя логику вычисления количества страниц, проверки валидности номера страницы и предоставляет удобный интерфейс для доступа к данным текущей страницы.