Django 减少模板渲染时间
Django Reduce the template Rendering Time
我正在使用 Django 1.7 和 nginx。
我的示例视图文件是,
def testing(request):
return render_to_response('pages/testing.html', )
def testing1(request):
return render_to_response('pages/comingsoon.html',)
def testing2(request):
x= User.objects.all()
return render_to_response('pages/index1.html',{'users': x,})
def testing3(request):
context = User.objects.all()
return render_to_response('pages/testing.html',)
pages/testing.html - 仅包含文本。(纯文本)
pages/testing1.html - 包含 css 和 js
pages/testing2.html -
<body>
<h1>Users</h1>
{% for e in users %}
<table>
<tr>
<td class="active">{{ e.username }}</td>
<td>{{ e.email }}</td>
</tr>
</table>
{% endfor %}
</body>
pages/testing3.html - 包含与测试相同的内容1.html
但是 运行 这个 .
测试,测试 1 在服务器中用时不到 3 秒。
但是测试 3 需要 40 秒,而测试 2 需要超过 1 分钟。
我怎样才能减少它?
提前致谢。
您可以使用 values_list or values
并在 values_list 或值中的模板中指定您需要的值,而不是 User.objects.all()。这将产生巨大的差异。
我正在使用 Django 1.7 和 nginx。
我的示例视图文件是,
def testing(request):
return render_to_response('pages/testing.html', )
def testing1(request):
return render_to_response('pages/comingsoon.html',)
def testing2(request):
x= User.objects.all()
return render_to_response('pages/index1.html',{'users': x,})
def testing3(request):
context = User.objects.all()
return render_to_response('pages/testing.html',)
pages/testing.html - 仅包含文本。(纯文本)
pages/testing1.html - 包含 css 和 js
pages/testing2.html -
<body>
<h1>Users</h1>
{% for e in users %}
<table>
<tr>
<td class="active">{{ e.username }}</td>
<td>{{ e.email }}</td>
</tr>
</table>
{% endfor %}
</body>
pages/testing3.html - 包含与测试相同的内容1.html
但是 运行 这个 .
测试,测试 1 在服务器中用时不到 3 秒。
但是测试 3 需要 40 秒,而测试 2 需要超过 1 分钟。
我怎样才能减少它? 提前致谢。
您可以使用 values_list or values
并在 values_list 或值中的模板中指定您需要的值,而不是 User.objects.all()。这将产生巨大的差异。