在Django中有一种方法可以过滤多个字段为空或空。
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)
答案 0 :(得分:112)
print TestModel.objects.filter(manytomany=None)
答案 1 :(得分:1)
除了@Bernhard答案外,还可以使用Q()
对象来实现其他可能的解决方案。
from django.db.models import Q
filters = Q(manytomany=None)
TestModel.objects.filter(filters)
否定:
filters = ~Q(manytomany=None)
TestModel.objects.filter(filters)