Django 基础 9

分页
先导入模块
from django.core.paginator import Paginator,EmptyPage,PageNotAnInteger
 
分页对象
user = UserInof.objects.all()
p = Paginator(user,2)   #2表示每页显示2条数据
 
分页对象的属性和方法
p.conut 数据总数
p.num_pages 数据页数
p.page_range 分页后页码列表
p.page().has_next() 是否有下一页
p.page().has_previous() 是否有上一页
p.page().has_other_page() 是否有其他页
p.page().next_page_number() 下一页的页码
p.page().previous_page_number() 上一页的页码
 
view.py
 
def index(request):
    user = UserInof.objects.all()
    p = Paginator(user,2)
 
    get_page = int(request.GET.get('page',1))
 
    try:
        user =p.page(get_page)
    except PageNotAnInteger:
        user = p.page(1)
    except EmptyPage:
        user = p.page(p.num_pages)
 
    return render(request,'web/index.html',locals())
 
index.html
 
<ul>
     {% for foo in user %}
        <li>{{ foo.user }}</li>
        <li>{{ foo.passwd }}</li>
    {% endfor %}
</ul>
 
{% if user.has_previous %}
    <a href="/index?page={{ user.previous_page_number }}">上一页</a>
{% endif %}
 
{% for list in p.page_range %}
    {% if list == user.number %}
        {{ list }}
    {% else %}
        <a href="/index?page={{ list }}">{{ list }}</a>
    {% endif %}
{% endfor %}
 
{% if user.has_next %}
    <a href="/index?page={{ user.next_page_number }}">下一页</a>
{% endif %}

转载于:https://my.oschina.net/u/3803568/blog/2994347

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值