zoukankan      html  css  js  c++  java
  • 13、Django实战第13天:分页列表功能

    我们看课程 机构列表页是需要分页的

    为了完成分页功能,我们需要用到Django的一个开源开发库django-pure-pagination

    workon mxonline
    pip install django-pure-pagination

    安装完成之后,我们需要把'pure_pagination'加入到INSTALLED_APPS

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'users',
        'courses',
        'organization',
        'operation',
        'xadmin',
        'crispy_forms',
        'captcha',
        'pure_pagination',
    ]

    编辑organization.views.py,加上分页逻辑

    ...
    from pure_pagination import Paginator, PageNotAnInteger
    
    
    class OrgView(View):
        def get(self, request):
            #城市
            all_citys = CityDict.objects.all()
            #课程机构
            all_orgs = CourseOrg.objects.all()
            #机构数
            org_nums = all_orgs.count()
    
            #对课程进行分页
            try:
                page = request.GET.get('page', 1)
            except PageNotAnInteger:
                page = 1
            p = Paginator(all_orgs, 3, request=request)  #3表示每页显示的机构数
            orgs = p.page(page)
    
            return render(request, 'org-list.html', {
                'all_orgs': orgs,
                'all_citys': all_citys,
                'org_nums': org_nums,
            })

    后台已经改成分页了,所以前端课程机构的for循环需要改下

    然后把分页的html也改成如下

    到此分页功能已经完成,快去刷新网页看看效果吧

  • 相关阅读:
    【6.29】数组和方法
    【6.28】判断和循环
    【6.27】两个数交换的4种方法
    NodeJS学习笔记
    准备使用马克飞象写博客
    前端基础
    学习笔记
    数据结构 — Java链表
    Java 日期类型与字符串的相互转换
    Scala(一)基础
  • 原文地址:https://www.cnblogs.com/sellsa/p/8482369.html
Copyright © 2011-2022 走看看