如何使用SQLAlchemy的`one_or_none`查询方法?

时间:2018-05-12 21:54:36

标签: python sqlalchemy

我尝试使用one_or_none查询方法从我的数据库中检索记录,但是当我传递像我通常使用filter_by方法那样的kwargs时,它说它没有& #39; t期待关键字。

我尝试了doc,但没有描述方法的论点或示例。

1 个答案:

答案 0 :(得分:2)

如果您执行Product.query.filter_by(id=101).first(),并且数据库中没有ID为101的产品,则会返回None。如果您的数据库上有一个ID为101的产品,它将返回第一个数据库命中为类Product的实例。

您还可以执行Product.query.filter_by(name='apple').one_or_none(),如果您的数据库中没有名为None的产品,则会返回apple,如果有Product,则会返回apple的实例您的数据库中只有一个名为apple的产品,或者如果您的数据库中有多个名为PlayKeys.devSettings的产品,则会引发异常。