Make request consistently available in pagination classes#8764
Merged
Conversation
lovelydinosaur
approved these changes
Nov 17, 2022
| Paginate a queryset if required, either returning a | ||
| page object, or `None` if pagination is not configured for this view. | ||
| """ | ||
| self.request = request |
Contributor
There was a problem hiding this comment.
I like that you've moved these, so that the assignment is clearly consistent across all three cases.
|
This is a really useful change for when trying to override methods like |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
As discussed in #8761, this pull request modifies the CursorPagination such that it stores the current request in an instance field. This ensures that all three pagination classes consistently have access to a request reference.
As a related change, this pull request also updates the PageNumberPagination and LimitOffsetPagination to be consistent and both store the request at the start of the
paginate_querysetmethod: previously LimitOffsetPagination stored the request early in the flow whereas PageNumberPagination stored it late.