0
如果我得到這樣附加的特定對象(但同一類型)的過濾的對象在Django
special_user_list = User.objects.filter(userprofile__user_type = 'special')
User
對象的列表,我怎麼還附上request.user
(登錄的用戶的電流),這也是User
?
我知道我大概可以這樣做
special_user_list = User.objects.filter(
Q(userprofile__user_type = 'special') |
Q(pk = request.user.pk)
)
,但我不知道上面的代碼可以雙擊包括request.user
(如果request.user.get_profile().user_type = 'special'
爲好)。另外,我想避免使用複雜的SQL語句來添加用戶,因爲我已經知道該用戶的身份。
真的嗎?過濾後的查詢集不僅僅是一個列表嗎?我不能使用Python的'append()'? – hobbes3 2012-04-12 06:58:06
不。過濾的「QuerySet」仍然是一個「QuerySet」。它的表示只是*看起來像一個列表。 – 2012-04-12 07:01:22
Ignacio,我猜@ hobbes3不需要在這裏執行'.distinct()',因爲只有一個左外連接 – okm 2012-04-12 07:03:36