SqlAlchemy を使用して ID でデータベースをクエリする方法は? 質問する

SqlAlchemy を使用して ID でデータベースをクエリする方法は? 質問する

SQLAlchemyデータベースidに次のようなクエリを実行する必要があります

User.query.filter_by(username='peter')

しかし、IDについてはどうすればいいでしょうか? [Google や SO で検索しても役に立ちませんでした]

ベストアンサー1

クエリには関数を取得するテーブルの主キーによるクエリをサポートしており、それがサポートされてidいると想定しています。

たとえば、ID が 23 のオブジェクトをクエリするには、次のようにします。

User.query.get(23)

注: 他のコメントや回答で述べられているように、これは単に「主キーでクエリフィルタリングを実行する」の省略形ではありません。SQLAlchemy セッションの状態に応じて、このコードを実行すると、データベースをクエリして新しいインスタンスが返されるか、実際にデータベースをクエリせずに、コードで以前にクエリしたオブジェクトのインスタンスが返される可能性があります。まだ読んでいない場合は、SQLAlchemyセッションに関するドキュメント影響を理解するため。

おすすめ記事