From 3989fb0bc2a5917a4a14b8cace04568f1e4addc1 Mon Sep 17 00:00:00 2001 From: Agzamus Date: Mon, 12 Oct 2026 15:54:01 +0300 Subject: [PATCH] =?UTF-8?q?feat:=203.2.=20=D0=A1=D0=BE=D0=B7=D0=B4=D0=B0?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BC=D0=BE=D0=B4=D1=83=D0=BB=D1=8C=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B4=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20?= =?UTF-8?q?=D0=BA=20=D0=91=D0=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/db/__init__.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/app/db/__init__.py b/app/db/__init__.py index e69de29..63b83d5 100644 --- a/app/db/__init__.py +++ b/app/db/__init__.py @@ -0,0 +1,21 @@ +from collections.abc import Iterator + +from sqlalchemy import create_engine +from sqlalchemy.orm import Session, sessionmaker + +from app.config import settings + +connect_args = ( + {"check_same_thread": False} if settings.database_url.startswith("sqlite") else {} +) + +engine = create_engine(settings.database_url, connect_args=connect_args) +SessionLocal = sessionmaker(bind=engine, autoflush=False, autocommit=False) + + +def get_db() -> Iterator[Session]: + db = SessionLocal() + try: + yield db + finally: + db.close()