2017-02-24 34 views
3

我有以下模型。我試圖從UserClasses中選擇指定了特定class_id的所有內容。那麼我想獲得的用戶數據爲每個結果將queryset數據傳遞給另一個查詢django

class UserClasses(models.Model): 
    class_id = models.ForeignKey(Class) 
    user = models.ForeignKey(User) 

這是我試圖把所有用戶對象我的Django的觀點:

users = UserClasses.objects.filter(class_id=data['class_id']) 
user_details = User.objects.filter(#get users.id from userclasses and compare here) 

如何傳遞的結果從一個查詢集到另一個?

回答

5

您可以將__in運算符與django的values_list方法結合使用以實現您想要的效果。

users = UserClasses.objects.filter(class_id=data['class_id']) 
user_details = User.objects.filter(id__in=users.values_list('id', flat=True)) 
+0

甜!我只是試過它,它只返回1個用戶。從第一個查詢返回多個用戶。 –

+1

想通了。我需要將'user_id'傳遞給values_list() –

相關問題