Django:强制选择相关? [英] Django: Force select related?
本文介绍了Django:强制选择相关?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经创建了一个模型,我正在渲染默认/未修改的模型窗体。这个单独生成64个SQL查询,因为它有相当多的外键,而这些外键又有更多的外键。
I've created a model, and I'm rendering the default/unmodified model form for it. This alone generates 64 SQL queries because it has quite a few foreign keys, and those in turn have more foreign keys.
是否可以强制它永远(默认情况下)每次返回这些模型之一时,执行 select_related
推荐答案
您可以创建自定义管理器,只需覆盖 get_queryset
即可将其应用到任何地方。例如:
You can create a custom manager, and simply override get_queryset
for it to apply everywhere. For example:
class MyManager(models.Manager):
def get_queryset(self):
return super(MyManager, self).get_queryset().select_related('foo', 'bar')
(在Django 1.6之前,它是 get_query_set
)。
(Prior to Django 1.6, it was get_query_set
).
这篇关于Django:强制选择相关?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文