Django 其实是内置了一种分页的方法,但搜索网上其他人员分享的结果显示该方法在数据量数百万的情况会明显变慢。
所以我继续搜索,结果发现还有另一种方法更为高效。
原理是在ORM获取结果时,利用其惰性属性,只获取指定数量 的结果。使得性能大为提升。
具体代码:
def getArtical(request):
all_english = models.Artical.objects.filter(category=‘english’).all()[0:20]
python Django ORM 文章列表的之高效分页方法
最新推荐文章于 2025-06-03 14:00:00 发布
本文探讨了Django内置分页方法在处理大量数据时的性能问题,并提出了一种更高效的解决方案。通过利用ORM的惰性加载特性,仅获取指定数量的数据,显著提升了查询效率。示例代码展示了如何在`getArtical`函数中,只获取'english'分类下的前20条Artical记录,从而避免了全量数据加载,改善了性能。
3096

被折叠的 条评论
为什么被折叠?



