Django - 过滤空整数字段不起作用

afs*_*hin 3 django django-models

这是我正在使用的查询集:

模型:

class Category(models.Model):
    categoryText = models.CharField(max_length=50)
    parentCat = models.ForeignKey('self',null=True,blank=True)
Run Code Online (Sandbox Code Playgroud)

我试图查询parentCat为空/未设置的所有条目.

queryset=Category.objects.all().filter(parent=null)
Run Code Online (Sandbox Code Playgroud)

显然这不起作用 - 执行此查询的正确方法是什么?

bra*_*ers 7

null实际上不是 Python中的预定义对象.你想要None:

queryset = Category.objects.filter(parentCat=None)
Run Code Online (Sandbox Code Playgroud)

要么

queryset = Category.objects.filter(parentCat__isnull=True)
Run Code Online (Sandbox Code Playgroud)

这两个是等价的.