可以说我有以下几点:使用select_related获得值两款车型走
class Model1(Model):
field1 = ForeignKey(Model2)
query_field = IntegerField()
class Model2(Model):
field2 = ForeignKey(Model3)
class Model3(Model)
field3 = SomeDesiredValue
现在我想做的Model1
表的查询,并从Model3
拉出field3
。我的问题是关于select_related
的性能。
如果我做
query = Model1.objects.filter(query_field=filter_paramter).select_related('field1')
我假设下面还是会打的数据库?
query[0].field1.field2.field3
我可以做以下,使其更快?
query = Model1.objects.filter(query_field=filter_paramter).select_related('field1__field2')
FWIW,你可以查看被说执行的实际SQL查询'打印query.query'(在你的例子中使用变量) - [这里](http://stackoverflow.com/q/971667/2428558)是一个相关的问题。 – Jackall 2015-02-06 10:13:51