dependencies.py 419 B

1234567891011121314151617
  1. from collections.abc import AsyncGenerator
  2. from sqlalchemy.ext.asyncio import AsyncSession
  3. from app.core.database import AsyncSessionLocal
  4. async def get_db() -> AsyncGenerator[AsyncSession, None]:
  5. async with AsyncSessionLocal() as session:
  6. try:
  7. yield session
  8. except Exception:
  9. await session.rollback()
  10. raise
  11. finally:
  12. await session.close()