はじめに
FastAPIの作者がSQLmodelというSQLAlchemyをベースとしたORマッパーを作成したらしい。
FastAPIを用いる際にはスキーマの作成が省略でき、より簡素にコーディングできるとのこと。
この界隈は全くの初心者ですが、気になるのでチュートリアルをみてみました。
FastAPIのチュートリアルは非常に丁寧で、一部和訳され、言及しているところも多い印象です。しかしSQLmodelの記事はまだ少ないようです。ですのでFastAPIとの連携の部分を和訳してみました。
以下、下記からの引用です。
機械翻訳をガッツリ使って、一部意訳しているので間違いがあるかもしれません。
FastAPIとPydantic - Intro¶
SQLModelが最も輝くユースケースの一つであり、それが作られた主な理由は、FastAPIと組み合わせることでした。✨
FastAPIは、SQLModelの同じ作者によって作成された、Web APIを構築するためのPython Webフレームワークです。FastAPIもPydanticの上に構築されています。
この章では、これまで見てきたようなSQLデータベースのテーブルを表すSQLModelのtableモデルと、データのみを表すdataモデル(実際には裏ではPydanticモデルになっている)を組み合わせる方法を見ていきます。
SQLModelのtableモデルと純粋なdataモデルを組み合わせることができるのは、それだけでも便利ですが、すべての例をより具体的にするために、FastAPIを使ってみましょう。
最終的には、データベース内のデータを操作するためのシンプルだが完全なWeb APIを手に入れることができるでしょう。🎉
Learning FastAPI¶
FastAPI を使用したことがない場合は、続行する前に少し勉強してみるのが良いでしょう。
FastAPI メインページの例を読んで試すだけで十分で、10 分もかからないはずです。