0
我有四個型號:Django的select_related不會檢索子類的模型
Task(models.Model):
fields...
BasicImage(models.Model):
task = models.ForeignKey(Task)
fields...
VisImage(BasicImage):
fields...
IRImage(BasicImage):
fields...
後來我有一些代碼執行以下操作:
task = Task.objects.get()
basicimages = task.basicimage_set.select_related().all()
imageset1 = basicimages.filter(filter=1)
imageset2 = basicimages.filter(filter=2)
,並在模板中,我最終顯示,像這樣的信息:
{% for i in imageset1 %}
{{ i.visimage.field }}
{% endfor %}
{% for i in imageset2 %}
{{ i.irimage.field %}
{% endfor %}
然而,根據Django的調試工具欄(以及明顯的滯後),Django是仍然重新查詢每個.visimage和.irimage對象。 select_related如何不在照顧這個?
它適用於One-To-One字段https://code.djangoproject.com/ticket/7270#comment:66 – 2012-02-23 09:43:44
ahhh ...我的壞..請downvot eme – goh 2012-02-23 10:31:19