[后端]修改后端公告GET接口,增加返回公告总条数,总页数

This commit is contained in:
sxw 2015-08-08 08:41:20 +08:00
parent a03b8af79d
commit fc57dcbde4
3 changed files with 13 additions and 5 deletions

View File

@ -11,4 +11,4 @@ class AdminTemplateView(APIView):
try:
return HttpResponse(open(path).read(), content_type="text/html")
except IOError:
return HttpResponse(u"模板不存在", content_type="text/html")
raise Http404

View File

@ -70,7 +70,11 @@ def paginate(request, query_set, object_serializer):
except Exception:
return error_response(u"参数错误")
data = {"results": object_serializer(current_page, many=True).data, "previous_page": None, "next_page": None}
data = {"results": object_serializer(current_page, many=True).data,
"previous_page": None,
"next_page": None,
"count": paginator.count,
"total_page": paginator.num_pages}
try:
data["previous_page"] = current_page.previous_page_number()

View File

@ -51,14 +51,18 @@ class PaginatorTest(APITestCase):
self.assertEqual(response.data, {"code": 1, "data": u"参数错误"})
def test_correct_paginate(self):
response = self.client.get(self.url + "?paging=true&limit=1&page_size=1&page=1")
response = self.client.get(self.url + "?paging=true&page_size=1&page=1")
self.assertEqual(response.data["code"], 0)
self.assertEqual(response.data["data"]["previous_page"], None)
self.assertEqual(response.data["data"]["next_page"], 2)
self.assertEqual(len(response.data["data"]["results"]), 1)
self.assertEqual(response.data["data"]["count"], 2)
self.assertEqual(response.data["data"]["total_page"], 2)
response = self.client.get(self.url + "?paging=true&limit=1&page_size=2&page=1")
response = self.client.get(self.url + "?paging=true&page_size=2&page=1")
self.assertEqual(response.data["code"], 0)
self.assertEqual(response.data["data"]["previous_page"], None)
self.assertEqual(response.data["data"]["next_page"], None)
self.assertEqual(len(response.data["data"]["results"]), 2)
self.assertEqual(response.data["data"]["count"], 2)
self.assertEqual(response.data["data"]["total_page"], 1)