From dd2137cbe57de3cc9ee2365d62170d90bdcc721d Mon Sep 17 00:00:00 2001 From: Mike iLL Kilmer Date: Tue, 21 Oct 2025 15:38:22 -0500 Subject: [PATCH] Update tutorial002.py Replace deprecated `@app.on_event("startup")` with lifecycle event approach. --- docs_src/sql_databases/tutorial002.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs_src/sql_databases/tutorial002.py b/docs_src/sql_databases/tutorial002.py index 4350d19c6..71eac10b6 100644 --- a/docs_src/sql_databases/tutorial002.py +++ b/docs_src/sql_databases/tutorial002.py @@ -1,4 +1,5 @@ from typing import List, Union +from contextlib import asynccontextmanager from fastapi import Depends, FastAPI, HTTPException, Query from sqlmodel import Field, Session, SQLModel, create_engine, select @@ -43,14 +44,13 @@ def get_session(): with Session(engine) as session: yield session +@asynccontextmanager +async def lifespan(app: FastAPI): + models.create_db_and_tables() + yield + # Can add events for after startup completion here -app = FastAPI() - - -@app.on_event("startup") -def on_startup(): - create_db_and_tables() - +app = FastAPI(lifespan=lifespan) @app.post("/heroes/", response_model=HeroPublic) def create_hero(hero: HeroCreate, session: Session = Depends(get_session)):