我应该如何搜索给定对象(名称)的所有空值?
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)
谢谢
答案 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