2012-09-01 15 views
0

我一直試圖找出實現這個查詢一段時間,現在最好的辦法,但沒有太多的期待如何做到在多個表的大型查詢和Django

我有如下表一個很基本的用戶..

class followTable(models.Model): 
    user = models.ForeignKey(User) 
    datetime = models.DateTimeField(auto_now_add=True) 
    taget_user = models.ForeignKey(User) 

我希望能夠讓所有用戶(TARGET_USER)當前用戶下然後從屬於TARGET_USER另一個表返回所有職位,這將是最好的方法是什麼?

我用盡

userlist = followTable.objects.filter(user=request.user) 

然後做在用戶列表一個foreach和單獨查詢每個用戶,但似乎有點混亂,有沒有人有什麼建議嗎?

回答

0
Post.objects.filter(
    author__in=followTable.objects.filter(user=MY_USER).values_list('target_user', flat=True)) 
+1

相反'[x.target_user用於followTable.objects.filter(用戶= MY_USER)X]',使用'FollowTable.objects.filter(用戶= MY_USER).values_list( 'TARGET_USER' 的,扁平=真的)'將是更好的方法 – FallenAngel

+0

@FallenAngel,我喜歡那樣。謝謝! –

+0

@FallenAngel多數民衆贊成在輝煌,感謝您的幫助 – user1447443