django-pure-pagination分页功能的实现

来源:互联网 发布:下载instagram软件 编辑:程序博客网 时间:2024/06/04 22:48
django开源分页库下载地址https://github.com/jamespacileo/django-pure-paginationpip install django-pure-paginationINSTALLED_APPS = (    ...    'pure_pagination',)PAGINATION_SETTINGS = {    'PAGE_RANGE_DISPLAYED': 10,    'MARGIN_PAGES_DISPLAYED': 2,    'SHOW_FIRST_PAGE_WHEN_INVALID': True,}views.pyfrom pure_pagination import Paginator, EmptyPage, PageNotAnInteger def get(self,request):        #课程机构        all_orgs = CourseOrg.objects.all()        org_nums = CourseOrg.objects.count()        #所有城市        all_citys = CityDict.objects.all()        #课程分页        try:            page = request.GET.get('page', 1)        except PageNotAnInteger:            page = 1        #2 表示每页的数量        p = Paginator(all_orgs,2,request=request)        orgs = p.page(page)        return render(request,"org-list.html",{'all_orgs':orgs,'all_citys':all_citys,'org_nums':org_nums})html页面          {% for course_org in all_orgs.object_list %}                <dl class="des difdes">                    <dt>                        <a href="{% url 'org:org_home' course_org.id %}">                            <img width="200" height="120" class="scrollLoading" data-url="{{ MEDIA_URL }}{{ course_org.image }}"/>                        </a>                    </dt>                    <dd>                        <div class="clearfix">                             <a href="{% url 'org:org_home' course_org.id %}">                                 <h1>{{ course_org.name }}</h1>                                 <div class="pic fl">                                     <img src="{% static 'images/authentication.png' %}"/>                                     <img src="{% static 'images/gold.png' %}"/>                                 </div>                             </a>                        </div>                        <ul class="cont">                            <li class="first"><p class="pic9">课程数:<span>1</span></p><p class="c7">学习人数:<span>{{ course_org.click_num }}</span></p></li>                            <li class="c8" style="padding-left:18px;">{{ course_org.address }}</li>                            <li class="pic10" style="padding-left:18px;">经典课程:                                <a href="/diary/19/">c语言基础入门</a>                                <a href="/diary/16/">数据库基础</a>                            </li>                        </ul>                    </dd>                    <div class="buy start_groupbuy jsShowPerfect2" data-id="22"><br/>联系<br/>服务</div>                </dl>            {% endfor %}</div> <div class="pageturn">            <ul class="pagelist">                {% if all_orgs.has_previous %}                    <li class="long"><a href="?{{ all_orgs.previous_page_number.querystring }}">上一页</a></li>                {% endif %}                        {% for page in all_orgs.pages %}                {% if page %}                    {% ifequal page all_orgs.number %}                        <li class="active"><a href="?{{ page.querystring }}">{{ page }}</a></li>                    {% else %}                        <li><a href="?{{ page.querystring }}" class="page">{{ page }}</a></li>                    {% endifequal %}                {% else %}                    <li class="none"><a href="">...</a></li>                {% endif %}            {% endfor %}            {% if all_orgs.has_next %}                <li class="long"><a href="?{{ all_orgs.next_page_number.querystring }}">下一页</a></li>            {% endif %}            </ul>        </div></div></div>