Django的分页

搞了好几天终于弄好了,大致原理晓得了
首先是路由

urlpatterns = [
    path('page_deploy/',views.page_deploy),
]

然后是视图

from django.core.paginator import Paginator

def page_deploy(request):
    deploy = DeployInfoHelper(admin_ip, admin_port, admin_dbname, admin_dbuser, admin_dbpassword)
    json_info = deploy.get_deploy_info()
    paginator = Paginator(json_info, 5)
    num_p = request.GET.get('page', 1)
    page = paginator.page(int(num_p))
    return render(request,'page_deploy.html',locals())

模板

{% for p in page %}

        <tr>

            <td>{{ p.id }}</td>

            <td>{{ p.deploy_date }}</td>

            <td>{{ p.deploy_real_date }}</td>

            <td>{{ p.deploy_project }}</td>

            <td>{{ p.deploy_project_detail }}</td>

            <td>{{ p.deploy_project_type }}</td>

            <td>{{ p.deploy_version }}</td>

            <td>{{ p.deploy_result }}</td>

            <td>{{ p.deploy_dev }}</td>

            <td>{{ p.deploy_test }}</td>

            <td>{{ p.deploy_ops }}</td>

            <td>{{ p.remarks }}</td>

        </tr>

    {% endfor %}
    {% if page.has_previous %}
  <a href="?page={{ page.previous_page_number }}">上一页</a>
{% else %}
上一页
{% endif %}
{% for p in paginator.page_range %}
    {% if p == page.number %}
        {{ p }}
    {% else %}
        <a href="?page={{ p }}">{{ p }}</a>
    {% endif %}
{% endfor %}
{% if page.has_next %}
  <a href="?page={{ page.next_page_number }}">下一页</a>
{% else %}
下一页
{% endif %}

核心代码都在这里了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值