aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework
diff options
context:
space:
mode:
authorBen Konrath2012-10-11 11:39:23 +0200
committerBen Konrath2012-10-11 12:01:07 +0200
commit5454162b0419ab6564f37ea56b1852d686b0a11e (patch)
tree66887a70a46ecedc6892fc044d5d103a83808d46 /rest_framework
parent6fbd411254089c86baca65b08a89d239e5b804a9 (diff)
downloaddjango-rest-framework-5454162b0419ab6564f37ea56b1852d686b0a11e.tar.bz2
Define 'page' query field name in one place.
Diffstat (limited to 'rest_framework')
-rw-r--r--rest_framework/pagination.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/rest_framework/pagination.py b/rest_framework/pagination.py
index 616c7674..c77a1005 100644
--- a/rest_framework/pagination.py
+++ b/rest_framework/pagination.py
@@ -3,7 +3,11 @@ from rest_framework import serializers
# TODO: Support URLconf kwarg-style paging
-class NextPageField(serializers.Field):
+class PageField(serializers.Field):
+ page_field = 'page'
+
+
+class NextPageField(PageField):
"""
Field that returns a link to the next page in paginated results.
"""
@@ -12,16 +16,16 @@ class NextPageField(serializers.Field):
return None
page = value.next_page_number()
request = self.context.get('request')
- relative_url = '?page=%d' % page
+ relative_url = '?%s=%d' % (self.page_field, page)
if request:
for field, value in request.QUERY_PARAMS.iteritems():
- if field != 'page':
+ if field != self.page_field:
relative_url += '&%s=%s' % (field, value)
return request.build_absolute_uri(relative_url)
return relative_url
-class PreviousPageField(serializers.Field):
+class PreviousPageField(PageField):
"""
Field that returns a link to the previous page in paginated results.
"""
@@ -30,10 +34,10 @@ class PreviousPageField(serializers.Field):
return None
page = value.previous_page_number()
request = self.context.get('request')
- relative_url = '?page=%d' % page
+ relative_url = '?%s=%d' % (self.page_field, page)
if request:
for field, value in request.QUERY_PARAMS.iteritems():
- if field != 'page':
+ if field != self.page_field:
relative_url += '&%s=%s' % (field, value)
return request.build_absolute_uri(relative_url)
return relative_url