慢速Django管理员更改视图

时间:2019-01-06 18:55:07

标签: django

我有一个大约有15万行的模型。

  • 渲染此模型的ListView需要1.3秒。
  • 当我单击ListView中的更改链接时,我需要近2分钟来呈现更改视图。
  • 其他模型的编辑视图渲染时间正常。

有什么想法可以加快速度吗?

2 个答案:

答案 0 :(得分:3)

您最好的选择是限制返回的行数并在您的应用程序中实现某种分页。

Django方便地实现了一种pagination

答案 1 :(得分:0)

首先,问自己这些问题

您是否在模板中处理大量数据?

我可以在后端执行此工作,而仅在模板中进行渲染吗?

我是否使用分页?

据我所知,在Django中使用LIMIT和OFFSET sql语句实现了分页,当您有很多页面时,它们的工作速度不是很快。在我们的项目中,我们为此目的编写了一个行SQL,它的运行速度快一点。

此外,您可以安装Django Debug Toolbar,它可以显示django ORM正在执行哪些语句并测量时间。