我在mysql中有此表
import peewee
class User(peewee.Model):
username = peewee.Charfield(max_length=60)
email = peewee.Charfield(max_length=300)
def __repr__(self):
return "<User: {}>".format(self.username)
当我为现有用户尝试以下代码时:
User.get(email="zhaochang@qq.com")
它返回<User: zhaochang>
但是对于不存在User.get(email="some_random@email.com")
的随机电子邮件/用户,它会引发错误:
UserDoesNotExist:Instance matching query does not exist:
SQL: SELECT 't1'.'id', 't1'.'email', 't1'.'username' FROM 'user' AS t1 WHERE ('t1'.'email' = %s)
PARAMS: [u'some_random@email.com']
我希望User.get方法返回None。
答案 0 :(得分:1)
当文档明确指出
时,为什么期望该方法返回None?如果未返回任何模型,则会引发DidNotExist。
来源:http://docs.peewee-orm.com/en/latest/peewee/api.html#Model.get