In Django=は、空またはnullのmanytomanyフィールドでフィルタリングする方法があります。
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)
print TestModel.objects.filter(manytomany=None)
@Bernhardの回答に加えて、Q()
オブジェクトを使用して他の可能な解決策を実現できます。
from Django.db.models import Q
filters = Q(manytomany=None)
TestModel.objects.filter(filters)
否定:
filters = ~Q(manytomany=None)
TestModel.objects.filter(filters)