您的位置:首页 > 编程语言 > Go语言

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

2017-10-22 13:54 821 查看
django开源分页库下载地址 https://github.com/jamespacileo/django-pure-pagination 
pip install django-pure-pagination
INSTALLED_APPS = (
...
'pure_pagination',
)
PAGINATION_SETTINGS = {
'PAGE_RANGE_DISPLAYED': 10,
'MARGIN_PAGES_DISPLAYED': 2,

'SHOW_FIRST_PAGE_WHEN_INVALID': True,
}

views.py
from 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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: