我正在嘗試降低我的django應用程序正在使用的查詢量,但我對如何執行此操作有點困惑。在Django中優化此類查詢的最佳方法
我想獲得一個命中查詢設置到數據庫,然後過濾來自該設置的項目。我已經嘗試了幾件事,但我總是得到每一組的查詢。
比方說,我想從我的數據庫中得到所有的名字,但也分離出剛纔名爲特德的人。名稱和特德集都將在模板中使用。
這會給我兩組,一組與所有的名字和一個與特德..但也打兩次數據庫:
名稱列表= People.objects.all()
tedList = namelist.filter (name ='ted')
有沒有辦法在沒有再次敲入數據庫的情況下過濾第一組?
首先,請將您的代碼縮進四個空格。使用「101010」按鈕。其次,Django(和你的數據庫)大量使用緩存。你怎麼知道這些查詢實際上是一個性能問題?請提供一些指標來顯示查詢會減慢應用程序的速度。 – 2010-06-02 17:12:41
我看到兩個命中數據庫,因爲我認爲可能會一擊。這就是我要做的。對我來說似乎是常識,一擊比兩個更好......但我可能是錯的。 – chris 2010-06-02 17:47:34