直接上代码吧:


#views.pydefaccesslog(request):state=login_status(request.user.is_authenticated())log_list=AccessLog.objects.all().order_by()paginator=Paginator(log_list,10)current_page_num=request.GET.get('page',1)try:current_page=paginator.page(current_page_num)exceptEmptyPage:current_page=paginator.page(paginator.num_pages)exceptPageNotAnInteger:current_page=paginator.page(1)returnrender(request,'radius/accesslog.html',{'current_page':current_page,'paginator':paginator,'state':state})#templatetags/mytag.pyfromdjangoimporttemplateregister=template.Library()@register.filter(name='substra')defsubstra(value,arg):try:returnint(value)-int(arg)except:return''

HTML

#accesslog.html{%loadmytag%}<divclass="container"><tableclass="tabletable-condensed">{%forlogincurrent_page.object_list%}<tr><td>{{log.id}}</td><td>{{log.username}}</td><td>{{log.ipaddr}}</td><td>{{log.access_datetime|date:"Y-m-dH:s"}}</td>{%iflog.status%}<td><spanclass="labellabel-success">认证成功</span></td>{%else%}<td><spanclass="labellabel-danger">认证失败</span></td>{%endif%}<td>{{log.message}}</td></tr>{%endfor%}</table><nav>{#{{current_page.paginator.num_pages}}#}<ulclass="pagination">{%ifcurrent_page.number>3%}<li><ahref="?page=1">第一页</a></li>{%endif%}{%ifcurrent_page.number==1%}<li><ahref="?page={{current_page.number}}">1</a></li>{%endif%}{%ifcurrent_page.number>2%}<li><ahref="?page={{current_page.number|substra:2}}">{{current_page.number|substra:2}}</a></li><li><ahref="?page={{current_page.previous_page_number}}">{{current_page.previous_page_number}}</a></li><li><ahref="?page={{current_page.number}}">{{current_page.number}}</a></li>{%elifcurrent_page.number==2%}<li><ahref="?page={{current_page.previous_page_number}}">{{current_page.previous_page_number}}</a></li><li><ahref="?page={{current_page.number}}">{{current_page.number}}</a></li>{%endif%}{%ifcurrent_page.number|add:2<=current_page.paginator.num_pages%}<li><ahref="?page={{current_page.next_page_number}}">{{current_page.next_page_number}}</a></li><li><ahref="?page={{current_page.number|add:2}}">{{current_page.number|add:2}}</a></li><li><ahref="?page={{current_page.paginator.num_pages}}">最后一页</a></li>{%elifcurrent_page.number==current_page.paginator.num_pages%}{#nothingtodo#}{%elifcurrent_page.number|add:2>=current_page.paginator.num_pages%}<li><ahref="?page={{current_page.next_page_number}}">{{current_page.next_page_number}}</a></li>{%endif%}</ul></nav></div></div>{%include'radius/footer.html'%}<script>$(document).ready(function(){$('.paginationlia').each(function(){if($(this).html()=={{current_page.number}}){$(this).parent().addClass('active')}});})</script>