在Django中,你可以從一個QuerySet做這個刪除的項目,如記錄here:如何從草堆SearchQuerySet刪除項目
queryset = QuerySet.remove(item)
草堆SearchQuerySet是建立在查詢集,但似乎remove方法沒有得到執行。有誰知道一種方法來刪除SearchQuerySet中的項目?
FWIW我正在嘗試爲客戶端進行第二級過濾。基本上,我正在通過SearchQuerySet來討論幾個特定的屬性。這個想法是,如果他們沒有它,我想刪除它們。
謝謝
這對於Haystack的錯誤報告會更好。如果他們未能實現自定義的QuerySet,使其仍然像標準的QuerySet一樣工作,那就是一個錯誤,他們應該修復它。 – 2012-01-03 19:21:24
我不認爲這是一個錯誤。也許是一個增強,但我問,因爲我確定有人遇到了這個。這就是說我會提交一個增強請求。 – rh0dium 2012-01-03 19:32:20
語義,實際上,但如果您要取代默認功能,您的覆蓋應該支持所有相同的行爲。這使它成爲一個錯誤。無論如何,如果沒有'remove',就無法從查詢集中刪除單個項目,因此使用Haystack提交某種錯誤/功能請求是解決方案。如果將查詢集轉換爲列表,則可以使用'list.remove',但是這樣會失去查詢集功能。 – 2012-01-03 19:38:18