2010-11-15 28 views
64

Django'da çok-alanlı bir alan üzerinde boş veya sıfır boşluk bırakmanın bir yolu var.django - manytomany'deki sorgu filtresi boşaltıldı

class TestModel(models.Model): 
    name = models.CharField(_('set name'), max_length=200) 
    manytomany = models.ManyToManyField('AnotherModel', blank=True, null=True) 

print TestModel.objects.filter(manytomany__is_null=True) 

cevap

94
print TestModel.objects.filter(manytomany=None) 
+27

ve ters 'TestModel.objects.exclude (manytomany = Yok) ile mümkündür ' –

+0

'AnotherModel' ilgisiz/serbest nesneleri sorgulamak için bir yolu var mı? Birçok modele kadar temizlik yapmaya çalışıyorum. – bozdoz

+0

'AnotherModel.objects.filter (testmodel_set = None)' işlevini kullanmak benim için çalıştı. [İlgili bir isim] (https://docs.djangoproject.com/en/dev/topics/db/queries/#backwards-related-objects) kullanıyorsanız, bunun yerine elbette kullanmalısınız. – Felipe