gpt4 book ai didi

python - 如何优化 Django 的分页器模块

转载 作者:太空宇宙 更新时间:2023-11-03 19:33:35 25 4
gpt4 key购买 nike

我有一个关于 Django 分页器模块如何工作以及如何优化它的问题。我从互联网上的不同 API 获得的信息中列出了大约 300 项信息。我正在使用 Django 的分页器模块为访问者显示列表,一次显示 10 个项目。分页效果没有达到我想要的效果。看来分页器必须先获取所有 300 个项目,然后才能拉出每次更改页面时需要显示的 10 个项目。例如,如果有 30 个页面,那么转到第 2 页需要我的网站再次查询 API,将所有信息放入列表中,然后访问访问者浏览器请求的 10 个页面。我不想继续在 API 中查询我在每次翻页时已经拥有的相同信息。

现在,我的 View 有一个函数,可以查看 get 请求并根据查询向 API 查询信息。然后它将所有这些信息放入列表中并将其传递到模板文件中。因此,每当有人翻页时,该函数总是会加载,从而导致再次查询 API。

我应该如何解决这个问题?

感谢您的帮助。

最佳答案

在这种情况下,分页器需要完整的列表才能完成其工作。

我的建议是定期更新提要的缓存,然后使用该缓存作为分页器模块的输入。对每个请求执行密集或长时间的任务总是一个坏主意。如果不是因为用户将经历的页面加载时间,请考虑您的服务器是否存在易受攻击的漏洞。

您可能想查看Django's low level cache API这将允许您将提要结果存储在 key 下的全局可访问位置,稍后您可以使用它来检索缓存并为每个页面请求进行分页。

关于python - 如何优化 Django 的分页器模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4599189/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com