mirror of
https://github.com/jazzband/django-admin2.git
synced 2026-03-17 06:30:25 +00:00
Adding support for pagination.
This commit is contained in:
parent
8ea3b97786
commit
bc899a9389
2 changed files with 22 additions and 1 deletions
|
|
@ -167,7 +167,11 @@ class ModelAdmin2(BaseAdmin2):
|
|||
return reverse('admin2:{}'.format(self.get_prefixed_view_name('index')))
|
||||
|
||||
def get_api_list_kwargs(self):
|
||||
return self.get_default_view_kwargs()
|
||||
kwargs = self.get_default_view_kwargs()
|
||||
kwargs.update({
|
||||
'paginate_by': self.list_per_page,
|
||||
})
|
||||
return kwargs
|
||||
|
||||
def get_api_detail_kwargs(self):
|
||||
return self.get_default_view_kwargs()
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
from django.test import TestCase
|
||||
from django.test.client import RequestFactory
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.utils import simplejson as json
|
||||
|
||||
|
||||
from djadmin2 import apiviews
|
||||
|
|
@ -47,6 +48,22 @@ class ListCreateAPIViewTest(ViewTest):
|
|||
|
||||
self.assertIn('"__str__": "Foo"', response.content)
|
||||
|
||||
def test_pagination(self):
|
||||
request = self.factory.get(reverse('admin2:blog_post_api-list'))
|
||||
modeladmin = self.get_model_admin(Post)
|
||||
view = apiviews.ListCreateAPIView.as_view(
|
||||
**modeladmin.get_api_list_kwargs())
|
||||
response = view(request)
|
||||
response.render()
|
||||
data = json.loads(response.content)
|
||||
self.assertEqual(data['count'], 0)
|
||||
# next and previous fields exist, but are null because we have no
|
||||
# content
|
||||
self.assertTrue('next' in data)
|
||||
self.assertEqual(data['next'], None)
|
||||
self.assertTrue('previous' in data)
|
||||
self.assertEqual(data['previous'], None)
|
||||
|
||||
|
||||
class RetrieveUpdateDestroyAPIViewTest(ViewTest):
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue