Django实现分页显示效果
Django中提供了一个类Paginator专门用来管理和处理分页数据,所以我们在使用之前先导入好相应的类,,另外这里我们也导入了待会会用到的处理异常的两个类EmptyPage和PageNotAnInteger:
fromdjango.core.paginatorimportPaginator,EmptyPage,PageNotAnInteger
接着编写好视图函数test:
deftest(request): course_list=CourseVideo.objects.all() #生成pagintor对象,定义每页显示10条记录 paginator=Paginator(course_list,10) #获取当前的页码数,默认为1 page=request.GET.get("page",1) #把当前的页码数转换为整数类型 currentPage=int(page) try: video_list=paginator.page(page)#获取当前页码的记录 exceptPageNotAnInteger: video_list=paginator.page(1)#如果用户输入的页码不是整数时,显示第1页的内容 exceptEmptyPage: video_list=paginator.page(paginator.num_pages)#如果用户输入的页码不是整数时,显示第1页的内容 returnrender(request,"test.html",locals())
接下来我们完成前端页面的逻辑,这里定义的文件为test.html:
这里的标题 {#数据显示div--start#} {%forvideoinvideo_list%} {{video.name}}