【发布时间】:2011-12-30 17:11:43
【问题描述】:
如果我正在使用 django 检索对象,我可以使用 .select_related() 来指示 django 也获取所有外键对象:
obj = ModelClass.objects.select_related().get(id=4) #1 db hit
foo = obj.long.chain.of.stuff #no db hit
如果我已经有obj,而没有.select_related(),那就是:
def doit(obj):
obj.long.chain.of.stuff #4 db hits
有没有办法让 django 填写它所有的外键关系?比如:
def doit(obj):
obj.magic() #1 db hit
obj.long.chain.of.stuff #no db hits
【问题讨论】:
标签: python sql database django performance