我有一个模板,其中包含许多包含在for循环中的嵌套。我们将不同的页面部分分解为单独的模板文件,因为我们通过以不同的方式将它们拼接在一起以用于不同的视图来重用它们。
例如: {%for user in users%} {%include“userDetail.html”%} {%endfor%}
我们的数据库中有大约40,000条记录。我已经将这个问题指向了模板系统。 render_to_response大约需要11秒才能运行。我想也许Django没有缓存模板,所以也许这是一个I / O问题。
我弄平了我们的一个模板,所以根本没有包含,并且剃掉了大约5秒钟。但是,在我们重复使用大量模板代码的情况下,这不是很有用。
有人知道这个问题的解决方案吗?或者有没有人有任何其他想法为什么render_to_response需要这么长时间?
[edit] 我应该提一下,我启用了Django的缓存模板加载器,它只保存了大约1秒钟。展平模板的速度要快得多。
答案 0 :(得分:0)
尝试Jinja2,比我读过的快得多,比Django的模板库快10倍。
答案 1 :(得分:-3)
你可以使用Java Script在客户端进行循环,而不是让django这样做。
http://blog.iiilx.com/programming/benchmarking-my-app-out-of-curiosity/