from fastapi import FastAPI, Depends from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.future import select from typing import List from models import User from db import get_async_db, create_async_db app = FastAPI() @app.on_event("startup") async def on_startup(): await create_async_db() @app.get("/users/", response_model=List[User]) async def read_users(skip: int = 0, limit: int = 10, db: AsyncSession = Depends(get_async_db)): async with db as session: result = await session.execute(select(User).offset(skip).limit(limit)) users = result.scalars().all() return users