我正在学习Flask Web Development的书,在第13章中,它是关于博客文章的评论"
帖子的路线功能如下,书中说"当页= -1" ,它将完全计算出多少评论,并进行划分" FLASKY_COMMENTS_PER_PAGE" ,然后它可以完全知道多少页,并决定哪一页是你要去的最后一页。
- 但令我困惑的是,为什么"(post.comments.count()"需要减去1 ???
即。如果评论数量是22,那么我添加了1条评论 计算应该是(23-1)// FLASKY_COMMENTS_PER_PAGE + 1 ???
我真的不知道为什么要减去1 ....
{{1}}
答案 0 :(得分:1)
让我们看看这一行:
page = (post.comments.count()-1)//current_app.config['FLASKY_COMMENTS_PER_PAGE']+1
让FLASKY_COMMENTS_PER_PAGE
为10.页面编号从1开始。如果有9条评论没有减去:9//10 + 1 = 0 + 1 = 1
这仍然很好,但是当你收到10条评论时:10//10 + 1 = 1 + 1 = 2
。所以你有2页而不是1.这就是你需要从总评论中减去1的原因。