django / django/new-features

[Admin] Offer Keyset / Seek Pagination

Open
#31 11 comments 22 reactions 0 assignees View on GitHub
Admin Views
Dominant language
No language data
Stars
188
Forks
7
PR merge metrics
No merged PRs in 30d

Description

### Code of Conduct

- [x] I agree to follow Django's Code of Conduct

### Feature Description

Offer a KeysetPagination with just the next and previous buttons, and fetch the items count on ajax button click (or just hide it) for the admin list view

This also helps ensure that links shared to look up a table are far more precise, as data can change between pages on a fast-moving dataset. There are some tables that I look up via a DB tool like DBeaver due to incessant http timeouts.

### Problem

When working with large datasets, the admin's standard LIMIT..OFFSET pagination becomes expensive, real fast. Simple page loads can take seconds if not minutes. Add in the default count on every list page, the two queries might be too much to handle.

### Request or proposal

proposal

### Additional Details

_No response_

### Implementation Suggestions

Django already offers a custom pagination class. This would essentially be leveraging the same but as an officially supported lookup method.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.