2013-01-08 45 views
1

我真的很新的Django編程,和我面臨的一個問題,我真的不知道該如何解決:搜索不存在在Django

我想要得到的用戶列表誰擁有許多串屬性,但只有沒有任何屬性的用戶才能與給定的屬性相等。

我有這樣一段代碼

all_users = list(UserProfile.objects.attribute.filter(type=given).exists()) 

但是這個代碼將返回我誰擁有該屬性的用戶,所以這裏的問題:我怎樣才能修改此行(或什麼線我需要添加)爲了得到沒有這個屬性的用戶列表

Ps:也許我沒有解釋清楚自己,因爲我真的不知道如何用英語指定我的問題,但是,如果你不知道我在問我可以再試一次

感謝所有

回答

5

您可以使用exclude

all_users = list(UserProfile.objects.attribute.exclude(type=given).exists()) 

引述文檔:

要創建這樣一個子集,則細化初始查詢集,添加過濾條件。精簡查詢集的兩種最常用方法是:

filter(**kwargs)
返回一個新的QuerySet,其中包含與給定查找參數匹配的對象。

exclude(** kwargs)
返回包含不匹配給定的查詢參數對象的新的QuerySet。

+0

非常感謝!那正是我需要的 – Sascuash