关于django分页的数据读取问题

https://segmentfault.com/a/11...

在跟着该教程学习django博客分页的时候,的一个小疑惑,该文是通过自定义模板标签功能实现的分页效果,不明白的在这一步:

templates/blog/index.html

{% load paginate_tags %} # 首先必须通过load模板标签载入分页标签 {% paginate
article_list 7 %} 把文章列表传给paginate函数,每页分7个,context上下文则自动被传入,无需显示指定

{% for article in article_list %}

display the article information {% endfor %}

其中的{% paginate article_list 7 %} 是指由views传递的所有文章列表吗?

如果是的话,假如数据库有几万几十万篇文章,这样一次性读取会是否影响载入速度,如果是,分页读取是否还有更优写法~~

阅读 3.8k
1 个回答

分页 通常就两种做法:
1、后端返回全部数据,前端来控制当前显示第几页的内容。优点:切换分页的时候不需要重新去后台请求,速度稍快;缺点:一次性返回大量数据,前后端效率都有所影响,并且,绝大对数数据 用户可能根本就不需要用到。
2、向后端请求的时候带上要查看的页数,后端处理, 只返回所需要的当页内容。 优缺点,与前者相反。
至于具体怎么选择,就得根据自身实际业务来决定了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏