2010-04-14 62 views
1

我正在使用django来构建一个功能稍重的应用程序。因此,我的模板有点沉重(嵌套循环,如果条件等)。我注意到70%到80%的时间花在了我的观点的render_to_response步骤上。 我还没有发现任何指示在谷歌的django模板引擎周围的性能问题。这里的任何人都面临类似的问题/任何建议来解决这个问题django,渲染响应花费很多时间

回答

2

有一点要记住的是QuerySet objects are lazy。除非你执行一个需要执行查询的操作(循环,计数等),否则他们实际上不会直接访问数据库。

如果你在你的模板上下文中传递了一个QuerySet对象,那么你的模板中的循环(或其他操作)通常会触发数据库调用。发生这种情况时,模板渲染对于数据库I/O是“受到惩罚”的,但整体响应时间应该不受视图中或模板渲染中是否发生影响。