day97-django-自带分页
1.views.py #分页:django分页:上一页、罗列所有页码、下一页,这种方式不适合数据比较多的情况, #我们需要自定义一个分页。 def index2(request): # for i in range(300): # name = 'root'+ str(i) # models.UserInfo2.objects.create(name=name,age=18,ut_id=1)
#所有行的列表 user_list = models.UserInfo2.objects.all() #per_page每页显示10条 paginator = Paginator(user_list,10) #当前页码 current_page = request.GET.get('page') #当前页码对象 posts = paginator.page(current_page) return render(request,'index2.html',{'posts':posts})
2.urls.py from app01 import views urlpatterns = [ url('index2.html', views.index2), ]
3.index2.html
<body>
<ul>
<!--每页显示10行-->
{% for row in posts.object_list %}
<li>{{ row.name }}</li>
{% endfor %}
<!--如果有上一页,获取上一页页码-->
{% if posts.has_previous %}
<a href="/index2.html?page={{ posts.previous_page_number }}">上一页</a>
{% endif %}
<!--如果有下一页,获取下一页页码-->
{% if posts.has_next %}
<a href="/index2.html?page={{ posts.next_page_number }}">下一页</a>
{% endif %}
</ul>
</body>
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步