2011-03-01 1 views
0

semble si simple, mais m'a contrecarrés:Comment trouver toutes les ObjectAs qui n'ont pas d'ObjectP?

class A(models.Model): 
    various fields 

class P(models.Model): 
    various fields 
    a = models.ForeignKey(A) 

object_a = A.objects.get(pk=1) 
p_objects = P.objects.filter(a=objecta) # one way 
p_objects = A.p_set.all()     # other way 

pour obtenir tous ce qui appartiennent P object_a est facile. Ce que je n'arrive pas à comprendre, c'est comment obtenir tous les objets A qui n'ont aucun objet P associé.

Je ne peux pas inverser la relation ForeignKey parce que chaque A peut avoir plus d'un P.

Répondre

2

Cela fonctionne

A.objects.filter(p__isnull=True) 
+0

Cela ne fait le travail, je me demande comment vous saviez que .. .. – boatcoder

+0

Les ficelles du métier? :) –

Questions connexes