Добавлен слой подключения к PostgreSQL

This commit is contained in:
2026-08-09 14:22:11 +03:00
parent 662670c538
commit 155004df5c
+23
View File
@@ -0,0 +1,23 @@
from collections.abc import Generator
from sqlalchemy import create_engine
from sqlalchemy.orm import DeclarativeBase, Session, sessionmaker
from .config import settings
class Base(DeclarativeBase):
"""Базовый класс SQLAlchemy-моделей."""
engine = create_engine(settings.database_url, pool_pre_ping=True)
SessionLocal = sessionmaker(bind=engine, autoflush=False, autocommit=False)
def get_db() -> Generator[Session, None, None]:
"""Открывает сессию БД для одного HTTP-запроса."""
db = SessionLocal()
try:
yield db
finally:
db.close()