From 481bfcfffd841d663491da2b403ebdc4d429d900 Mon Sep 17 00:00:00 2001 From: Conrad Date: Sun, 24 Nov 2024 17:57:53 +0100 Subject: [PATCH] feat: unified configs for pg sessions --- creyPY/fastapi/db/async_session.py | 14 +++----------- creyPY/fastapi/db/common.py | 13 +++++++++++++ creyPY/fastapi/db/session.py | 11 +---------- 3 files changed, 17 insertions(+), 21 deletions(-) create mode 100644 creyPY/fastapi/db/common.py diff --git a/creyPY/fastapi/db/async_session.py b/creyPY/fastapi/db/async_session.py index 07a0e61..8b8e557 100644 --- a/creyPY/fastapi/db/async_session.py +++ b/creyPY/fastapi/db/async_session.py @@ -1,22 +1,14 @@ import os from typing import AsyncGenerator + from dotenv import load_dotenv from sqlalchemy.ext.asyncio import AsyncSession, create_async_engine from sqlalchemy.orm import sessionmaker - -load_dotenv() - -host = os.getenv("POSTGRES_HOST", "localhost") -user = os.getenv("POSTGRES_USER", "postgres") -password = os.getenv("POSTGRES_PASSWORD", "root") -port = os.getenv("POSTGRES_PORT", "5432") -name = os.getenv("POSTGRES_DB", "fastapi") - -SQLALCHEMY_DATABASE_URL = f"postgresql+psycopg://{user}:{password}@{host}:{port}/" - +from .common import SQLALCHEMY_DATABASE_URL, name async_engine = create_async_engine(SQLALCHEMY_DATABASE_URL + name, pool_pre_ping=True) + AsyncSessionLocal = sessionmaker( bind=async_engine, class_=AsyncSession, diff --git a/creyPY/fastapi/db/common.py b/creyPY/fastapi/db/common.py new file mode 100644 index 0000000..67c43dd --- /dev/null +++ b/creyPY/fastapi/db/common.py @@ -0,0 +1,13 @@ +import os + +from dotenv import load_dotenv + +load_dotenv() + +host = os.getenv("POSTGRES_HOST", "localhost") +user = os.getenv("POSTGRES_USER", "postgres") +password = os.getenv("POSTGRES_PASSWORD", "root") +port = os.getenv("POSTGRES_PORT", "5432") +name = os.getenv("POSTGRES_DB", "fastapi") + +SQLALCHEMY_DATABASE_URL = f"postgresql+psycopg://{user}:{password}@{host}:{port}/" diff --git a/creyPY/fastapi/db/session.py b/creyPY/fastapi/db/session.py index 213e56b..b6be878 100644 --- a/creyPY/fastapi/db/session.py +++ b/creyPY/fastapi/db/session.py @@ -6,16 +6,7 @@ from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from sqlalchemy.orm.session import Session -load_dotenv() - -host = os.getenv("POSTGRES_HOST", "localhost") -user = os.getenv("POSTGRES_USER", "postgres") -password = os.getenv("POSTGRES_PASSWORD", "root") -port = os.getenv("POSTGRES_PORT", "5432") -name = os.getenv("POSTGRES_DB", "fastapi") - -SQLALCHEMY_DATABASE_URL = f"postgresql+psycopg://{user}:{password}@{host}:{port}/" - +from .common import SQLALCHEMY_DATABASE_URL, name engine = create_engine(SQLALCHEMY_DATABASE_URL + name, pool_pre_ping=True) SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)