20 lines
714 B
Python
20 lines
714 B
Python
from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession
|
|
from sqlalchemy.ext.declarative import declarative_base
|
|
from sqlalchemy.orm import sessionmaker
|
|
import os
|
|
|
|
POSTGRES_USER = os.environ.get("POSTGRES_USER", "user")
|
|
POSTGRES_PASSWORD = os.environ.get("POSTGRES_PASSWORD", "password")
|
|
POSTGRES_DB = os.environ.get("POSTGRES_DB", "db")
|
|
POSTGRES_HOST = os.environ.get("POSTGRES_HOST", "postgres")
|
|
|
|
|
|
SQLALCHEMY_DATABASE_URL = f"postgresql+asyncpg://{POSTGRES_USER}:{POSTGRES_PASSWORD}@{POSTGRES_HOST}/{POSTGRES_DB}"
|
|
|
|
engine = create_async_engine(SQLALCHEMY_DATABASE_URL)
|
|
async_session = sessionmaker(
|
|
autocommit=False, class_=AsyncSession, autoflush=False, bind=engine
|
|
)
|
|
|
|
Base = declarative_base()
|