获取对象django的所有空值

时间:2015-10-27 17:07:47

标签: django

我应该如何搜索给定对象(名称)的所有空值?

model:
name = models.CharField(max_length=150,null=True,blank=True)
u_name=models.CharField(max_length=25,null=True,blank=True)
year=models.PositiveSmallInteger(blank=True,null=True)

我希望通过各种“查找”来填充一些数据。 对于给定对象,它可能具有或不具有用于各种字段的值。我想通过查找使用可用值填充那些null的字段。

我可以获取一个null的字段。但有没有办法获取一个名称' rig'

的所有空值
u_name = Name.objects.filter(name='rig', u_name__isnull=True)

谢谢

1 个答案:

答案 0 :(得分:0)

请注意,CharFields会将'null'值存储为空字符串(https://docs.djangoproject.com/en/1.8/ref/models/fields/#null),因此您可能需要尝试以下操作:

u_name = Name.objects.filter(name='rig').filter(u_name=None)

u_name = Name.objects.filter(name='rig').filter(u_name="")

根据评论更新:

获取名称='rig'的名称:

rigs = Name.objects.filter(name='rig')

然后循环空u_names

for u_name in rigs.filter(u_name=""):
    # do things

然后循环空year s:

for empty_year in rigs.filter(year=None):
    # do things