上一个博客写了个简单的留言板,如果数据量太多的话在一页显示就不那么友好了,本文就是做一个分页显示。
代码在上一篇的基础上修改。
导入分页模块并修改views
#只需修改index函数即可
from django.core.paginator import Paginator
def index(request):
messages = models.Message.objects.all() #获取全部数据
limit = 10
paginator = Paginator(messages, limit) #按每页10条分页
page = request.GET.get('page','1') #默认跳转到第一页
result = paginator.page(page)
return render(request, 'guestbook/index.html', {
'messages' : result})
修改html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>留言板</title>
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" crossorigin="anonymous">
</head>
<body