django实现翻页

实现代码如下

from django.core.paginator import Paginator, PageNotAnInteger, EmptyPage
from django.forms.models import model_to_dict
​
def getProjectResultList(request):
    if request.method == 'POST':
​
        pageNo = int(request.POST['pageNo'])
        pageSize = int(request.POST['pageSize'])
        
        list = ProjectResult.objects.filter(prj_id=prj_id).order_by('-rst_id')
        
        paginator = Paginator(list, pageSize)
        totalCount = paginator.count
        try:
           list = paginator.page(pageNo)
           except PageNotAnInteger:
               list = paginator.page(1)
           except EmptyPage:
               list  = paginator.page(1)
​
           data = []      
           for info in list:
                json_dict = model_to_dict(info)
​
                data.append(json_dict)
​
            data = {"code": 200, "msg": "success", "data": data, "totalCount": totalCount}
            data = json.dumps(data)
            return HttpResponse(data, content_type='application/json')
       except:
         pass

 

posted @ 2022-10-19 11:48  sugoi  阅读(77)  评论(0)    收藏  举报