我有一个类似的模型:
class A(models.Model):
number = models.SmallIntegerField()
class B(models.Model):
a = models.OneToOneField(A)
我想做那样的事情:
b = B.objects.get(pk=1)
b.a.number = 5
b.a.save()
我的问题是:在这种情况下我应该使用.select_related('a')
吗?
b = B.objects.select_related('a').get(pk=1)
答案 0 :(得分:0)
总结一下:是的。如果没有select_related
,您将需要执行两个单独的数据库查询(一个用于获取b
,另一个用于获取关联的a
)。使用select_related
,您可以在一个查询中获取所有内容。