파이썬에서 사용하는 ORM인 SQLAlchemy를 FastAPI에서 간단하게 사용할 수 있도록 해주는 라이브러리입니다. SQLAlchemy와 동일한 기능을 하지만 FastAPI에서 더 쉽게 사용할 수 있습니다.
터미널에 다음과 같이 입력합니다.
$ pip install fastapi-sqlalchemy
먼저 app 인스턴스에 미들웨어를 추가해 주어야 합니다.
from fastapi import FastAPI
from fastapi_sqlalchemy import DBSessionMiddleware
app = FastAPI()
app.add_middleware(DBSessionMiddleware, db_url="db_url")
이제 미들웨어를 추가하면 모든 라우터에서 db세션에 접근할 수 있습니다.
from fastapi import FastAPI
from fastapi_sqlalchemy import DBSessionMiddleware
from fastapi_sqlalchemy import db
from app.models import User
app = FastAPI()
app.add_middleware(DBSessionMiddleware, db_url="sqlite://")
@app.get("/users")
def get_users():
users = db.session.query(User).all()
return users