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 %}原文地址:http://blog.51cto.com/8047993/2114538