Skip to content

Commit

Permalink
Fixed PaginationKeyBit (#146)
Browse files Browse the repository at this point in the history
* Fixed a bug in PaginationKeyBit, PaginationKeyBit wasn't working, It was giving the same result for different pages.
  • Loading branch information
tevinjoseph authored and auvipy committed Apr 21, 2016
1 parent 0a82b4c commit f85a636
Showing 1 changed file with 8 additions and 13 deletions.
21 changes: 8 additions & 13 deletions rest_framework_extensions/key_constructor/bits.py
Original file line number Diff line number Diff line change
Expand Up @@ -169,19 +169,14 @@ class PaginationKeyBit(QueryParamsKeyBit):
{'page_size': 100, 'page': '1'}
"""
def get_data(self, **kwargs):
kwargs['params'] = []
if hasattr(kwargs['view_instance'], 'paginator'):
if hasattr(kwargs['view_instance'].paginator, 'page_query_param'):
kwargs['params'].append(
kwargs['view_instance'].paginator.page_query_param)
if hasattr(kwargs['view_instance'].paginator,
'page_size_query_param'):
kwargs['params'].append(
kwargs['view_instance'].paginator.page_size_query_param)
return super(PaginationKeyBit, self).get_data(**kwargs)


def get_data(self, params, view_instance, view_method, request, args, kwargs):
page_dict = {}
if hasattr(view_instance, 'paginate_by'):
page_dict = {'page_size': view_instance.paginate_by}
page_dict.update({'page': request.GET.get('page', 1)})
return page_dict


class SqlQueryKeyBitBase(KeyBitBase):
def _get_queryset_query_string(self, queryset):
if isinstance(queryset, EmptyQuerySet):
Expand Down

0 comments on commit f85a636

Please sign in to comment.