/
ring0
/
support-system
Обзор
Документация
Войти
/
ring0
/
support-system
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
db.py
32 строки
866 B
ring0
Init project
22 июн 2026, 17:13
Верифицирован
22 июн 2026, 17:13
9df53b7
Код
Авторство
О чём код?
from sqlalchemy import create_engine, event from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker SQLALCHEMY_DATABASE_URL = "sqlite:///./support.db" engine = create_engine( SQLALCHEMY_DATABASE_URL, connect_args={"check_same_thread": False} ) @event.listens_for(engine, "connect") def _enable_foreign_keys(dbapi_connection, connection_record): """Активация поддержки внешних ключей в SQLite3 (PRAGMA foreign_keys = ON)""" cursor = dbapi_connection.cursor() cursor.execute("PRAGMA foreign_keys = ON") cursor.close() SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine) Base = declarative_base() def get_db(): """Генератор сессий БД""" db = SessionLocal() try: yield db finally: db.close()