在渲染时显示网页

时间:2012-11-09 16:24:30

标签: django web load rendering

我正在组建一个网站,其中一个网页包含一个交互式地图。该映射实现为一个大表,其中每个节点都是一个td。

现在这个地图需要一段时间来渲染,因此,我希望网站在渲染时显示,这样即使地图没有完全渲染,用户也可以点击链接或部分渲染的地图。

有一种简单的方法吗? AJAX是一个选项,但由于它是一个Django网站,并且地图依赖于Django模板的数据,因此AJAX变得有点笨拙。

有没有办法在渲染时让页面可见?<​​/ p>

(我考虑过让每个节点成为一个iframe,这样它们就会被单独渲染,但这看起来有点傻)

2 个答案:

答案 0 :(得分:0)

django模板应该只渲染一个空的地图(或一个持有前10个点的地图),并在页面准备好的情况下触发javascript代码

这个javascript脚本应该这样做:

  1. 从django请求10个节点(使用不同的URL /视图)
  2. 将获取的节点渲染到页面中
  3. 如果没有更多节点:END
  4. 转到1。
  5. 希望这有帮助

答案 1 :(得分:0)

尝试了几个不同的东西之后,似乎问题是数据库查询太多了。每个节点在渲染时都会调用数据库,这导致它们非常慢。

供参考: Django中的自定义过滤器如果在页面上大量使用,则不应进行数据库查询