diff options
| author | Sami J. Lehtinen <sjl@iki.fi> | 2017-04-06 13:01:04 +0300 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2017-09-06 14:17:19 -0400 |
| commit | 407c1249c9a0296ec8a8d95e447bd695ca471b5e (patch) | |
| tree | a181ef463ae796575f0c507bd80b3a9d5d6b79d4 /django | |
| parent | 5b1c389603a353625ae1603ba345147356336afb (diff) | |
Fixed #28032 -- Added Paginator.get_page().
Moved boilerplate from docs to a method.
Diffstat (limited to 'django')
| -rw-r--r-- | django/core/paginator.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/django/core/paginator.py b/django/core/paginator.py index 2686957af0..b07be513d3 100644 --- a/django/core/paginator.py +++ b/django/core/paginator.py @@ -47,6 +47,19 @@ class Paginator: raise EmptyPage(_('That page contains no results')) return number + def get_page(self, number): + """ + Return a valid page, even if the page argument isn't a number or isn't + in range. + """ + try: + number = self.validate_number(number) + except PageNotAnInteger: + number = 1 + except EmptyPage: + number = self.num_pages + return self.page(number) + def page(self, number): """Return a Page object for the given 1-based page number.""" number = self.validate_number(number) |
