如果我使用例如 {{ some_model.objects.all }}
在一个模板的几个地方,每次都会执行查询吗?如果是这样,我应该总是使用 {% with some_model.objects.all as some_name %}
避免这种情况?我在几个应用程序中看到了这一点,所以我想知道我是否理解正确。
最佳答案
是的,它会重复查询。您应该在 View 中填充上下文,而不是在模板中调用这些函数。
使用 {% with %}
虽然确实为将来的电话解决了问题,但我仍然投票支持该观点。
PS:
我强烈建议下载 django-debug-toolbar
https://github.com/dcramer/django-debug-toolbar
您可以立即测试这些想法:)
关于django - {% with %} 模板标签以避免多次执行查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5112209/