2012-10-17 44 views
0

許多關係的聯合查詢我有下面的類在我的models.py許多人在Django

class Story(models.Model): 
    title = models.CharField(max_length=60) 
    creator = models.ManyToManyField(User, blank=True) 

我試圖返回使用2個製作者姓名一個QuerySet。

例如,我將如何過濾具有創建者的故事:User 1 obj和User 2 obj?

我已閱讀多對多關係文檔並找不到任何內容。我已經達到最接近的解決方案是...

Story.objects.filter(creator__in=[1,2]).distinct() 

,但它並不適用於1和2都做了聯合查詢,只需1〜2

任何幫助將不勝感激!

+0

以供將來參考:我可以簡單鏈接.filter()過濾器()語句,但下面的答案可能是更優雅的解決方案的 –

回答

1

你將需要美國問答目的。我想嘗試這樣的事:

from django.db.models import Q 

Story.objects.filter(Q(creator=1) | Q(creator=2)) 
+0

謝謝這個完美工作。 –