Commit 2cff6e69 by Tom Christie

Added OrderingFilter

parent 6a037f63
...@@ -216,7 +216,7 @@ For more details, see the [Django documentation][search-django-admin]. ...@@ -216,7 +216,7 @@ For more details, see the [Django documentation][search-django-admin].
## OrderingFilter ## OrderingFilter
The `OrderingFilter` class supports simple query parameter controlled ordering of results. For example: The `OrderingFilter` class supports simple query parameter controlled ordering of results. To specify the result order, set a query parameter named `'order'` to the required field name. For example:
http://example.com/api/users?ordering=username http://example.com/api/users?ordering=username
......
...@@ -112,7 +112,7 @@ class SearchFilter(BaseFilterBackend): ...@@ -112,7 +112,7 @@ class SearchFilter(BaseFilterBackend):
class OrderingFilter(BaseFilterBackend): class OrderingFilter(BaseFilterBackend):
ordering_param = 'order' # The URL query parameter used for the ordering. ordering_param = 'ordering' # The URL query parameter used for the ordering.
def get_ordering(self, request): def get_ordering(self, request):
""" """
......
...@@ -369,7 +369,7 @@ class OrderingFilterTests(TestCase): ...@@ -369,7 +369,7 @@ class OrderingFilterTests(TestCase):
ordering = ('title',) ordering = ('title',)
view = OrderingListView.as_view() view = OrderingListView.as_view()
request = factory.get('?order=text') request = factory.get('?ordering=text')
response = view(request) response = view(request)
self.assertEqual( self.assertEqual(
response.data, response.data,
...@@ -387,7 +387,7 @@ class OrderingFilterTests(TestCase): ...@@ -387,7 +387,7 @@ class OrderingFilterTests(TestCase):
ordering = ('title',) ordering = ('title',)
view = OrderingListView.as_view() view = OrderingListView.as_view()
request = factory.get('?order=-text') request = factory.get('?ordering=-text')
response = view(request) response = view(request)
self.assertEqual( self.assertEqual(
response.data, response.data,
...@@ -405,7 +405,7 @@ class OrderingFilterTests(TestCase): ...@@ -405,7 +405,7 @@ class OrderingFilterTests(TestCase):
ordering = ('title',) ordering = ('title',)
view = OrderingListView.as_view() view = OrderingListView.as_view()
request = factory.get('?order=foobar') request = factory.get('?ordering=foobar')
response = view(request) response = view(request)
self.assertEqual( self.assertEqual(
response.data, response.data,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment