如何检查ImageField是空的

时间:2011-03-06 20:03:59

标签: django imagefield

我的模型中有一个ImageField,当我保存它时,我想检查它是否为无。

在django shell中,我正在调用我的对象的ImageField,它给出了:

>>> p.avatar
<ImageFieldFile: None>
>>> p.avatar is None
False

我发现ImageField的名字是你的',所以还有更好的方法吗?

1 个答案:

答案 0 :(得分:63)

  

我发现ImageField的名字是   你还有,还有更好的办法吗?   它?

实际上,看起来这正是这个类评估bool()的方式,所以更好的方法是通过调用bool()来测试if p.avatar

ImageFieldFile子类File,定义:

def __nonzero__(self):
    return bool(self.name)

所以更好的方法确实是:

if not p.avatar:
   print "I don't exist"

bool(p.avatar) is False
相关问题