博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django组件--分页器(有用)
阅读量:7063 次
发布时间:2019-06-28

本文共 2106 字,大约阅读时间需要 7 分钟。

一、分页器对象

from django.core.paginator import Paginator,EmptyPage

book_list = Book.objects.all() #假设有100条数据

#分页器 每页展示条数:8条
paginator = Paginator(book_list, 8) #返回Paginator对象
# print(paginator.count) #数据总条数 100
# print(paginator.num_pages) #总页数 13
# print(paginator.page_range) #页码的列表 range(1,14)

current_page = int(request.GET.get('page')) #拿到前端传的页码 url: http://localhost:8000/index?page=3

二、template中:当前页数据对象

curr_pg_obj = paginator.page(current_page) #拿到当前页的数据对象

#下面两种方式取数据

1,curr_pg_obj.object_list #QuerySet只有8条数据
2,for item in curr_pg_obj:
  print(item)

-----------template模板-----------

循环页码:页数paginator.num_pages
循环内容:当前页对象curr_pg_obj

for pg in pages:

  if pg=curr_pg
  print(选中的pg)
else
  print(pg)

--------------------------------------

# curr_pg_obj.has_next() 是否有下一页

# curr_pg_obj.next_page_number() 下一页页码
# curr_pg_obj.has_previous() 是否有上一页
# curr_pg_obj.previous_page_number() 上一页的页码

# 抛错

#page=paginator.page(99) # error:EmptyPage
#page=paginator.page("z") # error:PageNotAnInteger

 

    
Title

分页器

    {
    % for book in curr_pg_obj %}
  • {
    { book.title }} -----{
    { book.price }}
  • {
    % endfor %}
    {
    % if curr_pg_obj.has_previous %}
    {
    % else %}
    {
    % endif %} {
    % for num in paginator.page_range %} {
    % if num == currentPage %}
  • {
    { num }}
  • {
    % else %}
  • {
    { num }}
  • {
    % endif %} {
    % endfor %} {
    % if curr_pg_obj.has_next %}
    {
    % else %}
    {
    % endif %}

 

posted on
2019-04-19 02:00 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/staff/p/10733613.html

你可能感兴趣的文章
Java数组与内存控制
查看>>
索引的一些总结【转】
查看>>
pku 1019 Number Sequence 组合数学 找规律
查看>>
MySQL实用语句 GROUP BY ... HAVING ...
查看>>
高性能网站性能优化与系统架构(ZT)
查看>>
【转】每天一个linux命令(10):cat 命令
查看>>
Python——dummy_thread( _dummy_thread in Python 3.+)
查看>>
关于逻辑运算符书写效率问题 和数组 处理问题
查看>>
【web开发学习笔记】Structs2 Result学习笔记(一)简介
查看>>
android studio中取消关联git
查看>>
Mysql的共享锁和排他锁(转载)
查看>>
Preemption Context Switches 和 Synchronization Context Switches
查看>>
UVA 10405 Longest Common Subsequence (动态规划 LCS)
查看>>
CURL常用命令
查看>>
阿里巴巴技术团队博客
查看>>
java 单例模式
查看>>
IIS8 使用FastCGI配置PHP环境支持 过程详解
查看>>
互联网TCP/IP五层模型(一)
查看>>
ftrace 简介【转】
查看>>
用H5中的Canvas等技术制作海报
查看>>