首页 > 其他 > 详细

Django Paginator 分页

时间:2018-05-09 19:20:27      阅读:152      评论:0      收藏:0      [点我收藏+]
1,视图配置views

from django.core.paginator import Paginator


def HostInfo(request,page_id=1):

    host_info = models.HostInfo.objects.all().order_by('id')

    #创建分页对象,13为每页数据条目
    p = Paginator(host_info, 13) 
 
    #实例化当前页
    current_page = p.page(page_id)

    host_list = []
    for host in current_page:
        host_group = models.HostGroup.objects.filter(id=host.host_group_id)[0].group_name
        idc = models.IDC.objects.filter(id=host.idc_id)[0].idc_name

        host_list.append({'hostname':host.hostname,'IP':host.IP,'host_group':host_group,
                          'device_type':host.device_type,'status':host.status,'idc':idc,'msg':host.msg})
    return render(request, "cmdb_host.html", locals())


2,路由配置

django.conf.urls urlinclude
app_cmdb views


urlpatterns = [url(views.HostInfo)]

3,模板

margin-top:5px;background-color: #f5f5f5;主机名IP地址所属组描述设备类型设备状态机房操作{% for host in host_list %}
          {{ host.hostname }}{{ host.IP }}{{ host.host_group }}{{ host.msg }}{{ host.device_type }}{{ host.status }}{{ host.idc }}padding-left:5px;详情编辑删除{% endfor %}


        margin-top:-30px;padding-right:9%{% if current_page.has_previous %}
            
            上一页{% else %}
            上一页{% endif %}
    
            <!--循环分页对象索引列表-->
           {% for index in p.page_range %}
    
    
               {% if page_id == index %}
                background-color: red{{ index }}{% else %}
                {{ index }}{% endif %}
    
           {% endfor %}

        <!--判断当前页是否有下一页-->
       {% if current_page.has_next%}

        下一页{% else %}
            下一页{% endif %}


Django Paginator 分页

原文:http://blog.51cto.com/8047993/2114538

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!