paginator django 分页器( 三 )


        page_list.app("...") # 则添加一个元素
    print(page_list)
    #添加首从头至尾页
    if page_list[0] == "...":
        page_list.insert(0, 1) # 则插入该数构成为第一个元素(首页)
    if page_list[-1] != paginator.num_pages: # 判定是否不等于最年夜页码
        page_list.app(paginator.num_pages) # 不等于则插入到最后一个元素(从头至尾页)
    print(page_list)
    context['blogs'] = page_blogs
    context['page_list'] = page_list
    return rer(request, "home.html", context)
# paginator.num_pages 总共有几多页码
# paginator.page_range 页码规模 如 (1,7)
# page_list 页码列表规模

paginator django 分页器

文章插图

paginator django 分页器

文章插图

paginator django 分页器

文章插图

3这里的
page_list = [x for x in range(page_of_blogs.number -2, page_of_blogs.number + 3 )if x in paginator.page_range]
我利用了列表生当作式,如许可以避免超出页码规模或呈现页码数为负数的环境,别的我把page_list页码列表规模传出去,如许就可以在模板中利用了!别的添加了首从头至尾页以及省略号!之后就是在模板中利用了!

点窜模板home.html1这里我利用的是bootstrap的分页组件!在head头部记得引入css!
<link rel="stylesheet" href=https://vvvtt.com/article/"https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">

2<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Hello</title>
    <link rel="stylesheet" href=https://vvvtt.com/article/"https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css">
</head>
<body>
    <div>
        {% for blog in blogs %}
            <p>{{ blog.title }}</p>
            <p>{{ blog.content }}</p>
            <hr>
        {% for%}
    </div>
    <div>
        <ul>
            <li>
                {% if blog_list.has_previous %}{# 是否上一页 #}
                    <a href=https://vvvtt.com/article/"?page={{ blog_list }}" aria-label="Previous">
                        <span aria-hidden="true">&laquo;</span>
                    </a>
                {% else %}
                    <span aria-hidden="true">&laquo;</span>
                {% if%}
            </li>
            {# 全数页码 #}

推荐阅读