Spaces:
Runtime error
Runtime error
| from typing import AsyncGenerator | |
| from sqlalchemy.ext.asyncio import AsyncSession | |
| from starlette.requests import Request | |
| async def get_db_session(request: Request) -> AsyncGenerator[AsyncSession, None]: | |
| """ | |
| Create and get database session. | |
| :param request: current request. | |
| :yield: database session. | |
| """ | |
| session: AsyncSession = request.app.state.db_session_factory() | |
| try: # noqa: WPS501 | |
| yield session | |
| await session.commit() | |
| finally: | |
| await session.close() | |