2017-05-28 1 views
0

je dois obtenir de db tous les spécimens de relation de db. Actuellement, j'essaie d'obtenir cela avecDjango requête pour la liste des spécimens de relations

Msg.objects.filter(Q(u1=request.user)|Q(u2=request.user)) 

U1 is a sender, U2 is a recipient. (Fields have forgeinkey, to User model) 

Ceci est l'application pour envoyer des messages entre les utilisateurs. Et je veux créer une liste de conversarions où l'utilisateur actuellement connecté est un U1 ou U2, et obtenir la liste à afficher sans doublons. Un seul lien pour le destinataire/expéditeur

+0

si ce problème vous faites face? – Exprator

+0

Cette requête obtenir toutes les relations, puis sur la liste de conversation j'ai tous les messages .. je dois seulement obtenir la liste de conversation comme facebook, conversation avec l'utilisateur x, conversation avec l'utilisateur y, utilisateur z, sans doublons –

+0

oui c'est ce que vous obtiendrez alors passez en boucle et placez-les dans une liste, vérifiez si elle existe dans la liste ou non, si oui, ne les ajoutez pas sinon ajoutez-les – Exprator

Répondre

0

Selon la description de la tâche, la solution appropriée serait:

Msg.objects.filter(Q(u1=request.user) | Q(u2=request.user)).distinct()