分页

django本身带有分页功能,为什么要用他呢?因为它的代码更为简洁,并且在做筛选的时候会把url中的所有参数都组装起来,并且加上分页。也就是做筛选中的结果也可以用这个分页。

pip install django-pure-pagination

# setting app
'pure_pagination'

# view

        try:
            page = request.GET.get('page', 1)
        except PageNotAnInteger:
            page = 1
        p = Paginator(all_orgs,3, request=request)
        orgs = p.page(page)
        return render(request, 'org-list.html', {
            'all_orgs': orgs,
            
# html  模版的显示根据自己的要求,可以在开源库中找到具体的用法

 {% for course_org in all_orgs.object_list %}
 
  <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>
posted on 2017-06-05 09:29  NeedEnjoyLife  阅读(194)  评论(0编辑  收藏  举报