Плагин расширенных HTML-таблиц для Bootstrap и других CSS-фреймворков: сортировка, пагинация, выбор строк и дополнительные расширения.
ddnexus/pagy
Универсальная библиотека пагинации для Ruby: поддерживает пагинацию по смещению, ключам, поиску и календарю в Rails, Sinatra и других фреймворках.
- Звёзды
- 4,998
- Форки
- 446
- Открытые issues
- 3
- Последний коммит
- позавчера
Что это?
Pagy — гем для пагинации в Ruby, работающий с коллекциями любых типов и в разных средах, а не только в Rails. Он предлагает несколько стратегий, включая OFFSET, COUNTISH, COUNTLESS, KEYSET, KEYNAV, SEARCH и CALENDAR, чтобы разработчики могли выбрать подходящий вариант с учётом объёма данных и способа доступа к ним.
Для отображения Pagy предоставляет серверные хелперы навигации со стилями Bootstrap, Bulma или собственным стилем по умолчанию, а также клиентские компоненты навигации, подстраивающиеся под ширину контейнера. Кроме того, он поддерживает вложенные строки запросов JSON:API и ответы JSON с метаданными пагинации для API-клиентов.
В Pagy есть адаптеры для поисковых бэкендов, таких как Elasticsearch Rails, Meilisearch, Searchkick и Typesense Rails. В README описана автозагрузка только тех методов, которые использует проект, а также встроенная панель dev tools для предварительного просмотра стилей в запущенном приложении.
Ключевые возможности
- 01Поддерживает OFFSET, KEYSET, COUNTLESS, CALENDAR и другие способы пагинации.
- 02Предоставляет серверные хелперы навигации со стилями Bootstrap, Bulma и стилем по умолчанию.
- 03Предлагает клиентские компоненты навигации, подстраивающиеся под ширину контейнера.
- 04Формирует структуры ссылок JSON:API и метаданные в JSON для API-клиентов.
- 05Адаптеры для Elasticsearch Rails, Meilisearch, Searchkick и Typesense Rails.
Сценарии использования
- Добавление пагинации в списки Rails-приложения со стилями Bootstrap или Bulma.
- Создание JSON API, возвращающего ссылки пагинации в стиле JSON:API.
- Пагинация результатов поиска из Elasticsearch, Meilisearch или Typesense в Ruby.
- Пагинация данных, привязанных ко времени, по годам, месяцам, неделям или дням с помощью календарной навигации.
Быстрый старт
- 1
Подключите Pagy::Method в контроллере (например, в application_controller.rb)
- 2
Разбейте коллекцию на страницы с помощью pagy(:offset, Product.all)
В подборках
Темы
Частые вопросы
- Что такое pagy?
- Универсальная библиотека пагинации для Ruby: поддерживает пагинацию по смещению, ключам, поиску и календарю в Rails, Sinatra и других фреймворках. Pagy — гем для пагинации в Ruby, работающий с коллекциями любых типов и в разных средах, а не только в Rails. Он предлагает несколько стратегий, включая OFFSET, COUNTISH, COUNTLESS, KEYSET, KEYNAV, SEARCH и CALENDAR, чтобы разработчики могли выбрать подходящий вариант с учётом объёма данных и способа доступа к ним.
- pagy можно использовать бесплатно? Какая у него лицензия?
- pagy распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- pagy всё ещё поддерживается?
- Активно поддерживается. Последний коммит в pagy — 6 нояб. 2026 г..
- Для чего можно использовать pagy?
- Добавление пагинации в списки Rails-приложения со стилями Bootstrap или Bulma. Создание JSON API, возвращающего ссылки пагинации в стиле JSON:API. Пагинация результатов поиска из Elasticsearch, Meilisearch или Typesense в Ruby. Пагинация данных, привязанных ко времени, по годам, месяцам, неделям или дням с помощью календарной навигации.
- Как установить pagy?
- Подключите Pagy::Method в контроллере (например, в application_controller.rb) Разбейте коллекцию на страницы с помощью pagy(:offset, Product.all)
- Где скачать pagy?
- Исходный код и инструкции по установке — на GitHub: https://github.com/ddnexus/pagy
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Библиотека поиска для Ruby on Rails, которая добавляет полнотекстовый поиск в модели Active Record и Mongoid с помощью Elasticsearch или OpenSearch.
Ruby on Rails — полнофункциональный MVC-фреймворк для создания веб-приложений на Ruby с базой данных.
Плагин для MyBatis, который добавляет физическую пагинацию запросов, генерируя LIMIT или аналогичный SQL для множества баз данных.
Ruby-гем для Active Record, который генерирует читаемые слаги и позволяет искать модели по строке, например имени, вместо числового ID.
Открытый фреймворк электронной коммерции на Ruby on Rails для разработчиков, которые хотят создать собственный интернет-магазин и полностью контролировать его.