【问题标题】:Django Bootstrap form is slow to render, how can I speed up?Django Bootstrap 表单渲染速度很慢,我该如何加快速度?
【发布时间】:2013-08-18 09:31:24
【问题描述】:

我有一个大表单(20 个字段),它在 Django + bootstrap-toolkit 中一直阻塞渲染,如下图所示:

另见this block breakdown graph.

我尝试过的...

  • 缓存视图。 csrf 令牌总是使它成为一个新视图,因此它从不实际缓存。
  • 将表单拆分为自己的块内容,然后缓存该块,同时将 csrf 标记保留在字段外部。 Django 很难渲染它,并且 POST 按钮不起作用。

我没有想法,需要一些外部观点来了解如何解决这个问题。

【问题讨论】:

  • 安装调试工具栏,看看是什么让它变慢了。
  • @limelights 这似乎是每个字段(和 attrs)的 html 生成。该图像是一个概述,但我有一个逐步细分,显示了在 python 中呈现的每个字段。只是慢慢来。
  • 你自己渲染每个字段吗?
  • @limelights 表单类 - 表单域对象 - 表单域对象 表单类被拉入模板并渲染出来。看起来每个字段都有自己的 html 块。

标签: django forms twitter-bootstrap


【解决方案1】:

通过执行以下操作,我可以更快地加载它。

我用无数块请求预渲染了表单。
打开的浏览器请求表单。
复制了表单 HTML 代码。
使用预渲染 HTML 表单创建了新的 html 文件。
更改了“VIEW”的 GET 请求以使用新的预渲染表单 HTML。 在表单内添加了 CRSF 令牌。

响应时间从 5 秒减少到 0.50 毫秒。

请务必注意,您将无法使用在该视图上装饰的缓存。 您可以在表单中使用新 HTML 文件上的 模板标签。

希望这会有所帮助!

【讨论】:

  • 表单渲染速度慢得离谱。
猜你喜欢
  • 2015-07-17
  • 2011-10-04
  • 2010-11-12
  • 2017-12-20
  • 1970-01-01
  • 2023-03-08
  • 2011-01-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多