我有一堆Widget對象。如何正確創建一個Django QuerySet,其中某個字段的值在列表中?
現在每個小部件都有一個名爲'foo'的字符串屬性。我需要能夠查詢具有'foo'設置爲'紅色','橙色','綠色'或任意顏色的Widgets,並且只包含具有適當'foo'屬性的Widgets。此外,這些顏色來自用戶輸入,所以我不能相信他們。我寧願不加載所有結果,然後過濾它們,而是在SQL中執行此操作。
但是......我只能看到用「AND」連接子句的方法,從來沒有「OR」。而「in」是垃圾('in'只適用於數字ID或子查詢集,這可以減少相同的問題!)。我嘗試了一些其他的東西,但他們似乎沒有工作。
基本上,我在問如何表達這個作爲下面的filterQuery
的關鍵。
myNiceWidgets = Widget.objects.filter(**filterQuery).orderBy(...)
謝謝。
謝謝。奇怪的是我沒有在Django文檔中碰到這個。欣賞它,Yuji。 – 2012-01-16 18:59:22