我已经创建了一个模型,并且正在为它呈现默认/未修改的模型表单.仅此一项就生成了64个SQL查询,因为它有相当多的外键,而这些外键又有更多的外键.
是否可以强制将其设置为always(默认情况下),每次退回其中一个型号时执行select_related
?
我已经创建了一个模型,并且正在为它呈现默认/未修改的模型表单.仅此一项就生成了64个SQL查询,因为它有相当多的外键,而这些外键又有更多的外键.
是否可以强制将其设置为always(默认情况下),每次退回其中一个型号时执行select_related
?
您可以创建一个自定义管理器,只需覆盖get_queryset
,它就可以应用于所有地方.例如:
class MyManager(models.Manager):
def get_queryset(self):
return super(MyManager, self).get_queryset().select_related('foo', 'bar')
(在Django 1.6之前,是get_query_set
).