全系車型在我所定義的模型名爲ServerDjango的選擇與外鍵
class Server(models.model):
和一堆使用該模型作爲一個外鍵
class ServerInfo(models.Model):
server = models.ForeignKey(server, null=True)
class ServerDNSRecord(models.Model):
server = models.ForeignKey(server, null=True)
...etc
現在車型Django的web應用程序我有一個API調用,返回一個服務器及其所有附加信息。目前我只是爲每個服務器做一個for循環,並用服務器的名稱搜索每個信息表。問題是有時我需要進行一次API調用,以返回所有服務器及其信息。
這會爲數據庫創建大量的SQL查詢,並且此調用的響應時間通常大於5秒,這是不可接受的。
是否有任何簡單的方法來做某種聯接或外鍵搜索來減少數據庫調用的數量來加快速度?
'select_related'可能是你想要的:https://docs.djangoproject.com/en/1.8/ref/models/querysets/#select-related – NightShadeQueen